time="2024-09-22T23:58:30Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authentication-1 Creating Container integration-test-authorization-1 Creating Container integration-test-device-1 Creating Container integration-test-gateway-1 Creating Container integration-test-federation-1 Creating Container integration-test-forwarding-1 Creating Container integration-test-experiment-1 Creating Container integration-test-forwarding-1 Created Container integration-test-device-1 Created Container integration-test-federation-1 Created Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-experiment-1 Created Container integration-test-authorization-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, forwarding-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/forwarding_service.conf to /etc/nginx/forwarding_service.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 forwarding-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} forwarding-1 | {"level":"info","message":"Forwarding Service started successfully"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-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-22T23:59:14Z"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-09-22T23:59:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.242357,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:15Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1727049555.3895986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1727049555.3896706} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1727049555.3896923} 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":1727049555.389712} 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":1727049555.389729} 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":1727049555.3897765,"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":1727049555.390265} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1727049555.3910716} 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:53476","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-09-22T23:59:15.413058790Z","id":"01J8E2SQENQHS7Q56C9QMRSEC3","name":"crosslab","updated_at":"2024-09-22T23:59:15.413058790Z"},"request_id":"7933498d-a650-46ad-90be-377ee19b4f74","subsystem":"openfga","timestamp":1727049555.4131355} 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:53476","raw_request":{"schema_version":"1.1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J8E2SQG4DZJVCPZ2NXSGGBP7"},"request_id":"a07fe2de-854c-4e65-ace2-9aedb9eab6cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049555.4605598} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-09-22T23:59:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.29051,"resp_status":204,"subsystem":"opa","time":"2024-09-22T23:59:15Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} 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-22T23:59:15Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +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.023","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"4081695c61c83df996880754220c98a7"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 16ms","method":"HEAD","requestID":"4081695c61c83df996880754220c98a7","responseTime":16,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /device/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"c8c1164c7d0d818ba03c00f32ff6fcb9"} device-1 | {"level":"info","message":"HEAD /device/status 200 9ms","method":"HEAD","requestID":"acdf8e00-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +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":"66b4ce5ea84433b1147ed549fbf0129c"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 10ms","method":"HEAD","requestID":"66b4ce5ea84433b1147ed549fbf0129c","responseTime":10,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"d9c93024f8342778abca9cbd0b641e9e"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 10ms","method":"HEAD","requestID":"ace644c0-793e-11ef-9af1-6ffd2833891c","responseTime":10,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +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.013","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"e68d6b104e9aeec52b388b40f912b719"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 7ms","method":"HEAD","requestID":"ace97910-793e-11ef-95e1-1d0aedebc665","responseTime":7,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /forwarding/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.012","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"d26ee8dc690ab8d6b68e4dc27827cb02"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 9ms","method":"HEAD","requestID":"acec5f40-793e-11ef-a51e-0dff660adfff","responseTime":9,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"22/Sep/2024:23:59:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b43f4a3d5f88f6a977a695a9fd49214b"} authentication-1 | {"level":"info","message":"POST /login 201 143ms","method":"POST","requestID":"b43f4a3d5f88f6a977a695a9fd49214b","responseTime":143,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU1OX0.ATeyfNFjJbeUzc9jl6RHuv11tEGOeWhRaFhCsIjvrUA","level":"info","message":"auth send jwt","requestID":"68664bd2bc7c53d0e7e8f520fd51a081"} authentication-1 | {"level":"info","message":"GET /auth 200 38ms","method":"GET","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","responseTime":38,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"68664bd2bc7c53d0e7e8f520fd51a081"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.528289,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"68664bd2bc7c53d0e7e8f520fd51a081","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049559,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU1OX0.ATeyfNFjJbeUzc9jl6RHuv11tEGOeWhRaFhCsIjvrUA"} authorization-1 | {"level":"info","message":"POST /authorize 200 24ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"be82be6b-9de4-4173-a1ca-e2ca1ebc8365","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.8403127} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb22117-ecc8-43e6-8409-e5eb76b85868","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.8560805} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3711162d-7b26-4f42-a6ea-cef912b48282","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.8753035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b697777-4673-4410-8bed-e833bb082148","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.875813} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"6943aa29-f43d-4f97-86fe-ed9aafd9f1b2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.8837073} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"68664bd2bc7c53d0e7e8f520fd51a081"} gateway-1 | {"time_local":"22/Sep/2024:23:59:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.277","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68664bd2bc7c53d0e7e8f520fd51a081"} device-1 | {"level":"info","message":"POST /devices? 201 223ms","method":"POST","requestID":"68664bd2bc7c53d0e7e8f520fd51a081","responseTime":223,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU1OX0.ATeyfNFjJbeUzc9jl6RHuv11tEGOeWhRaFhCsIjvrUA","level":"info","message":"auth send jwt","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710918,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049559,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU1OX0.ATeyfNFjJbeUzc9jl6RHuv11tEGOeWhRaFhCsIjvrUA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"98516261-5e48-40ec-9c22-adde5db0929a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.9497304} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c973863c-7b9e-4c79-af16-97b48fd2915c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.9668007} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"0e8fb331-3c52-4c5a-9c98-5572f573b266","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.9854865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa6f1e21-4334-45c9-9781-8484bce82df7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.985909} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"5afba3c9-ad14-439e-a6f7-c894118c0b97","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049559.9984174} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a"} device-1 | {"level":"info","message":"POST /devices? 201 90ms","method":"POST","requestID":"3b8a7b6167a2ab8aec5a88f8efcce45a","responseTime":90,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6102968a33fde1d1be2c1b8580f714a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6102968a33fde1d1be2c1b8580f714a5","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f69e6b9c65ba373347acc3245a2fee2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e586a13d-e161-4d66-adc4-821907e26465/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.010","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6102968a33fde1d1be2c1b8580f714a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9f69e6b9c65ba373347acc3245a2fee2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/e586a13d-e161-4d66-adc4-821907e26465/websocket 200 2ms","method":"OPTIONS","requestID":"6102968a33fde1d1be2c1b8580f714a5","responseTime":2,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/websocket"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.010","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9f69e6b9c65ba373347acc3245a2fee2"} device-1 | {"level":"info","message":"OPTIONS /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket 200 2ms","method":"OPTIONS","requestID":"9f69e6b9c65ba373347acc3245a2fee2","responseTime":2,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1","responseTime":12,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"c96379bc22b9559f583357537a4c97fa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"c96379bc22b9559f583357537a4c97fa","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c96379bc22b9559f583357537a4c97fa"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215974,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b4cb3d8b200e62edfc58ec577ed12ef1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922419,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c96379bc22b9559f583357537a4c97fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"c96379bc22b9559f583357537a4c97fa","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c96379bc22b9559f583357537a4c97fa"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.060","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":"c96379bc22b9559f583357537a4c97fa"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket 200 40ms","method":"POST","requestID":"c96379bc22b9559f583357537a4c97fa","responseTime":40,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.079","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":"b4cb3d8b200e62edfc58ec577ed12ef1"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/websocket 200 63ms","method":"POST","requestID":"b4cb3d8b200e62edfc58ec577ed12ef1","responseTime":63,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0bec3e31aba2abbad6c1c73c390dd45","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f0bec3e31aba2abbad6c1c73c390dd45","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"f0bec3e31aba2abbad6c1c73c390dd45"} device-1 | {"level":"info","message":"OPTIONS /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 1ms","method":"OPTIONS","requestID":"f0bec3e31aba2abbad6c1c73c390dd45","responseTime":1,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"fe57027668e52e966e3f979417e0adca"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fe57027668e52e966e3f979417e0adca","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"10d4a2d3d322cfb4bb890c78eae65b3a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"10d4a2d3d322cfb4bb890c78eae65b3a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fe57027668e52e966e3f979417e0adca"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e586a13d-e161-4d66-adc4-821907e26465? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.015","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":"10d4a2d3d322cfb4bb890c78eae65b3a"} device-1 | {"level":"info","message":"OPTIONS /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 1ms","method":"OPTIONS","requestID":"10d4a2d3d322cfb4bb890c78eae65b3a","responseTime":1,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721052,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fe57027668e52e966e3f979417e0adca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe57027668e52e966e3f979417e0adca","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"c1323d5d39fca39808c4aa31e7b39e06"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c1323d5d39fca39808c4aa31e7b39e06","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c1323d5d39fca39808c4aa31e7b39e06"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.74645,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c1323d5d39fca39808c4aa31e7b39e06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c1323d5d39fca39808c4aa31e7b39e06","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"891f4f11-d279-4235-adc6-7c583239e4ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.5702903} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe57027668e52e966e3f979417e0adca","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0231c03-80ff-480f-a75e-1866cc05dffd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.5804365} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"fe57027668e52e966e3f979417e0adca","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"42c1e428-f06d-41db-81ca-0402acbdb719","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.5834334} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c1323d5d39fca39808c4aa31e7b39e06","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e312b4ac-f3f3-4b10-8b99-5e95a31412c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.5925212} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c1323d5d39fca39808c4aa31e7b39e06","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"bfda6e4a-0272-4bd5-804b-0d0d5f8fbfb3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.600199} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe57027668e52e966e3f979417e0adca","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fe57027668e52e966e3f979417e0adca"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.075","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fe57027668e52e966e3f979417e0adca"} device-1 | {"level":"info","message":"PATCH /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 68ms","method":"PATCH","requestID":"fe57027668e52e966e3f979417e0adca","responseTime":68,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"46b28ccd-7a36-4cfd-9cd8-37bf4d7decb9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.614726} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c1323d5d39fca39808c4aa31e7b39e06","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c1323d5d39fca39808c4aa31e7b39e06"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e586a13d-e161-4d66-adc4-821907e26465? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.063","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":"c1323d5d39fca39808c4aa31e7b39e06"} device-1 | {"level":"info","message":"PATCH /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 55ms","method":"PATCH","requestID":"c1323d5d39fca39808c4aa31e7b39e06","responseTime":55,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"7449bb768f63ef253324bd4f396e47d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7449bb768f63ef253324bd4f396e47d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7449bb768f63ef253324bd4f396e47d2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.876031,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7449bb768f63ef253324bd4f396e47d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7449bb768f63ef253324bd4f396e47d2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"ab70a53f-2a85-4e41-8ca5-d55ff6f5e9ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.6432152} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7449bb768f63ef253324bd4f396e47d2","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7449bb768f63ef253324bd4f396e47d2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7449bb768f63ef253324bd4f396e47d2"} device-1 | {"level":"info","message":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 26ms","method":"GET","requestID":"7449bb768f63ef253324bd4f396e47d2","responseTime":26,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"048b8218193f093a73d182d25f6dc21d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"048b8218193f093a73d182d25f6dc21d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"048b8218193f093a73d182d25f6dc21d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221471,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"048b8218193f093a73d182d25f6dc21d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"048b8218193f093a73d182d25f6dc21d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"8ce5c388-2f9e-4203-9adb-d3c13e844f8c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.6778662} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"048b8218193f093a73d182d25f6dc21d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"048b8218193f093a73d182d25f6dc21d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"048b8218193f093a73d182d25f6dc21d"} device-1 | {"level":"info","message":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 20ms","method":"GET","requestID":"048b8218193f093a73d182d25f6dc21d","responseTime":20,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg","level":"info","message":"auth send jwt","requestID":"8b851053ef4109c3436e8017fa84105f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8b851053ef4109c3436e8017fa84105f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8b851053ef4109c3436e8017fa84105f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.876844,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8b851053ef4109c3436e8017fa84105f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b851053ef4109c3436e8017fa84105f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to run experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to book experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully booked experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b08b30e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000842,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857134,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b08b30e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b08b30e0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"64d8eab8-c768-4c48-99fd-6a3248bf2bed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.8731894} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"dfebb6c5-97f9-4518-b346-a9dbbf4508d0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.8743658} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b08b30e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 20ms","method":"GET","requestID":"b08ae2c0-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b08b30e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 19ms","method":"GET","requestID":"b08b30e0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Setting up experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully set up experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b09c9600-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b09ce420-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135042,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully running experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b09c9600-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b09c9600-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883845,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b09d3240-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b09ce420-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b09ce420-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2feed0b2-d222-438f-aa11-e8d1c5b5df94","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.996375} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"4adae81a-6c92-4dd8-a515-e4701e9de04e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.9976726} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"4b158939-9d0c-477f-8309-9bb0d907a050","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049562.9998703} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.861526,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b09d3240-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","rebac_allow":false,"scope_allow":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":"b09d3240-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"b09c9600-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"b09ce420-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455794aa-713a-42f2-914f-251f744e113c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455794aa-713a-42f2-914f-251f744e113c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f3539c90-3327-4cf6-8640-5526d6bc7979","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.010674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66aedd59-88a2-41e4-92f5-29e9c87b134b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0111613} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b09d3240-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"8b851053ef4109c3436e8017fa84105f","responseTime":31,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling 200 39ms","method":"POST","requestID":"b09d3240-793e-11ef-9733-5750b05365a5","responseTime":39,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b09c9600-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 45ms","method":"GET","requestID":"b09c9600-793e-11ef-9733-5750b05365a5","responseTime":45,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b09ce420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 44ms","method":"GET","requestID":"b09ce420-793e-11ef-9733-5750b05365a5","responseTime":44,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a4ac50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d726d96b-38df-41d3-b37b-250f3c2bf65b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.036111} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.383107,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a5e4d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0a4ac50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","rebac_allow":false,"scope_allow":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":"b0a4ac50-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a4ac50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/signaling 200 14ms","method":"POST","requestID":"b0a4ac50-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09fe7827-dd4c-4a5d-bdbb-41c441e33552","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0437896} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.030739,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0a5e4d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","rebac_allow":false,"scope_allow":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":"b0a5e4d0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.360","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 342ms","method":"POST","requestID":"8b851053ef4109c3436e8017fa84105f","responseTime":342,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a5e4d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling 200 14ms","method":"POST","requestID":"b0a5e4d0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a8a3f0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"d774a98099d45bbf33e03603a46d95af"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d774a98099d45bbf33e03603a46d95af","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d774a98099d45bbf33e03603a46d95af"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12295f03-958b-49b5-b147-d9368d2e2e57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0625055} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.361809,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0a8a3f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","rebac_allow":false,"scope_allow":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":"b0a8a3f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805662,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d774a98099d45bbf33e03603a46d95af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d774a98099d45bbf33e03603a46d95af","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a8a3f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/signaling 200 15ms","method":"POST","requestID":"b0a8a3f0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"181d4a4e-e085-4279-9029-9aae6d381e83","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0719929} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d774a98099d45bbf33e03603a46d95af","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d774a98099d45bbf33e03603a46d95af"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d774a98099d45bbf33e03603a46d95af"} device-1 | {"level":"info","message":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 15ms","method":"GET","requestID":"d774a98099d45bbf33e03603a46d95af","responseTime":15,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0abff50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0ac2660-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"ab760b9ae07de1da03fcee5228acb18b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722913,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab760b9ae07de1da03fcee5228acb18b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab760b9ae07de1da03fcee5228acb18b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0abff50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b0abff50-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676982,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0ac2660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b0ac2660-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641148,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ab760b9ae07de1da03fcee5228acb18b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ab760b9ae07de1da03fcee5228acb18b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.875278194Z"}]},"request_id":"4ffa2ad4-cf67-4115-8cfb-f4a9372155f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.090165} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"6c936399-0a38-44e6-8153-7b6a826b3308","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0912275} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b0abff50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0ac2660-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:19.985472477Z"}]},"request_id":"57a3818b-1357-4d2a-9c0e-a76f1914e568","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.0972853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab760b9ae07de1da03fcee5228acb18b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0abff50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6? 200 23ms","method":"GET","requestID":"b0abff50-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0ac2660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 23ms","method":"GET","requestID":"b0ac2660-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab760b9ae07de1da03fcee5228acb18b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab760b9ae07de1da03fcee5228acb18b"} device-1 | {"level":"info","message":"GET /devices/e586a13d-e161-4d66-adc4-821907e26465? 200 19ms","method":"GET","requestID":"ab760b9ae07de1da03fcee5228acb18b","responseTime":19,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Building connection plan","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"e55fd505-41e9-477a-a03b-4ada0c857a9a"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"0622cf4e-7b3e-4c0a-8e78-d292e5a2c415"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"fd3c72e7-55a3-4bdb-9881-0dacdc9113a5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8b851053ef4109c3436e8017fa84105f"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.094166,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0b15680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049562,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Mn0.GIR0hUspPgeeqAJz7wDuvhNGI-XaX-XjQ4-y8gyDKIg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0b15680-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9971bc0a-ed1d-4d0f-84a1-d2863321bd0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.1393642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55a76ac0-16e4-4c78-98ca-6707fbd769bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.1396482} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b0b15680-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d'","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d'","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b0b15680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 50ms","method":"POST","requestID":"b0b15680-793e-11ef-9733-5750b05365a5","responseTime":50,"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":"b0b15680-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8b851053ef4109c3436e8017fa84105f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0bf6040-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f76f13d-2501-4534-9412-81f3d11089d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.2099996} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.65425,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0bf6040-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","rebac_allow":false,"scope_allow":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":"b0bf6040-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0bf6040-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling 200 10ms","method":"POST","requestID":"b0bf6040-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0c1aa30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b93736a-8deb-4b48-8c79-17205e1b32af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.2241492} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.331147,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0c1aa30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","rebac_allow":false,"scope_allow":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":"b0c1aa30-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0c1aa30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/signaling 200 10ms","method":"POST","requestID":"b0c1aa30-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/signaling"} device-1 | {"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2948259959037974314 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:kuHn\r\na=ice-pwd:kpHmppUaiucFPsCOOv44Yfzp\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B5:3E:B0:0E:2D:F0:76:A1:48:F0:0E:F4:2C:77:0E:02:A6:07:F9:4B:7D:AA:60:21:98:0D:12:5B:C5:21:85:5F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1809996248403867989 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:kLwE\r\na=ice-pwd:ICAenVNzkIu7cNCd8egVl371\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BD:57:B8:CA:7D:BB:AE:59:06:73:58:9B:71:3C:88:2A:53:46:AB:E6:91:D6:C5:D2:9D:7C:18:78:C0:18:0D:66\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4131883045 1 udp 2113937151 46060e40-05ac-4435-90db-745364446ab5.local 57441 typ host generation 0 ufrag kLwE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e586a13d-e161-4d66-adc4-821907e26465","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/e586a13d-e161-4d66-adc4-821907e26465'"} device-1 | {"content":{"candidate":"candidate:1919607386 1 udp 1677729535 141.24.211.56 57441 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kLwE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e586a13d-e161-4d66-adc4-821907e26465","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/e586a13d-e161-4d66-adc4-821907e26465'"} device-1 | {"content":{"candidate":"candidate:3079912968 1 udp 2113937151 127fe3e1-3938-4fba-a825-c93239d31202.local 46930 typ host generation 0 ufrag kuHn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:616046363 1 udp 1677729535 141.24.211.56 46930 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kuHn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","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/c99578f7-ef8c-4639-a314-723c8fae6ce6'"} device-1 | {"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"e586a13d-e161-4d66-adc4-821907e26465","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/08bc09e4-d220-433b-b55d-e33708e2898d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e586a13d-e161-4d66-adc4-821907e26465","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","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":"00bd670908fd35613e9536005180157f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"00bd670908fd35613e9536005180157f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"}}},"level":"info","message":"received a callback","requestID":"00bd670908fd35613e9536005180157f"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"00bd670908fd35613e9536005180157f","responseTime":17,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.022","http_referrer":"","http_user_agent":"node-fetch","requestID":"00bd670908fd35613e9536005180157f"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","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/08bc09e4-d220-433b-b55d-e33708e2898d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"44e01d13b5b1d006cecc311ed7961a51","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"44e01d13b5b1d006cecc311ed7961a51","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"}}},"level":"info","message":"received a callback","requestID":"44e01d13b5b1d006cecc311ed7961a51"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b0d706f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08bc09e4-d220-433b-b55d-e33708e2898d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13e43d59-a9f8-497e-bfb7-4bd3e70a9206","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.3640919} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.179301,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0d706f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0d706f0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b0d706f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d 200 10ms","method":"GET","requestID":"b0d706f0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"44e01d13b5b1d006cecc311ed7961a51","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"44e01d13b5b1d006cecc311ed7961a51"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"15c3041a895ee4a396b34c2bb31df712"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0dc1000-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15c3041a895ee4a396b34c2bb31df712","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/455794aa-713a-42f2-914f-251f744e113c","requestID":"15c3041a895ee4a396b34c2bb31df712"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bccdab2-5b51-456e-9aa0-05e9b4020068","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.3975646} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.272004,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0dc1000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","rebac_allow":false,"scope_allow":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":"b0dc1000-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.581326,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"15c3041a895ee4a396b34c2bb31df712","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15c3041a895ee4a396b34c2bb31df712","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0dc1000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/signaling 200 12ms","method":"POST","requestID":"b0dc1000-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0dea810-793e-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/455794aa-713a-42f2-914f-251f744e113c","requestID":"15c3041a895ee4a396b34c2bb31df712"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"436a1fb9-74e4-421c-9e8c-b9f277381f40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.4140587} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.693452,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/455794aa-713a-42f2-914f-251f744e113c HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15c3041a895ee4a396b34c2bb31df712"} experiment-1 | {"level":"info","message":"GET /experiments/455794aa-713a-42f2-914f-251f744e113c 200 21ms","method":"GET","requestID":"15c3041a895ee4a396b34c2bb31df712","responseTime":21,"status":200,"url":"/experiments/455794aa-713a-42f2-914f-251f744e113c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0dea810-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","rebac_allow":false,"scope_allow":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":"b0dea810-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0dea810-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling 200 9ms","method":"POST","requestID":"b0dea810-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"91630f192f20e1f74d7e80221cc06abe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91630f192f20e1f74d7e80221cc06abe","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/455794aa-713a-42f2-914f-251f744e113c","requestID":"91630f192f20e1f74d7e80221cc06abe"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.746113,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"91630f192f20e1f74d7e80221cc06abe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"91630f192f20e1f74d7e80221cc06abe","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Attempting to finish experiment","requestID":"91630f192f20e1f74d7e80221cc06abe"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.647528,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","device":"c99578f7-ef8c-4639-a314-723c8fae6ce6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d","device":"e586a13d-e161-4d66-adc4-821907e26465","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/08bc09e4-d220-433b-b55d-e33708e2898d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"301cbec5d3a62767d19f520871a5a52a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"301cbec5d3a62767d19f520871a5a52a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a3c2d2fff7f82d12d4837cc00febea2e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"}}},"level":"info","message":"received a callback","requestID":"301cbec5d3a62767d19f520871a5a52a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a3c2d2fff7f82d12d4837cc00febea2e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"}}},"level":"info","message":"received a callback","requestID":"a3c2d2fff7f82d12d4837cc00febea2e"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08bc09e4-d220-433b-b55d-e33708e2898d': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08bc09e4-d220-433b-b55d-e33708e2898d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"d6cdce7f-d30b-4295-b7e2-58040b623caa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.4636345} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3d04a74-af54-477b-a94e-e7c6b748fa95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.4639757} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"08bc09e4-d220-433b-b55d-e33708e2898d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d 204 43ms","method":"DELETE","requestID":"b0e2c6c0-793e-11ef-9733-5750b05365a5","responseTime":43,"status":204,"url":"/peerconnections/08bc09e4-d220-433b-b55d-e33708e2898d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455794aa-713a-42f2-914f-251f744e113c"},"level":"info","message":"Successfully finished experiment","requestID":"91630f192f20e1f74d7e80221cc06abe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0ed2700-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe586a13d-e161-4d66-adc4-821907e26465","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4eb0cd0d-01a8-4bf8-a7e1-41e70cef13cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.5127747} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.417005,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0ed2700-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e586a13d-e161-4d66-adc4-821907e26465","object_type":"device","rebac_allow":false,"scope_allow":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":"b0ed2700-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0ed2700-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e586a13d-e161-4d66-adc4-821907e26465/signaling 200 16ms","method":"POST","requestID":"b0ed2700-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/e586a13d-e161-4d66-adc4-821907e26465/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455794aa-713a-42f2-914f-251f744e113c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455794aa-713a-42f2-914f-251f744e113c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"f0243f1c-a2a7-4fb5-8376-b61b5726460e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.5231338} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0f03440-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17231793-0e40-4ad0-8202-abdc57cc8f92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.5246513} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"91630f192f20e1f74d7e80221cc06abe","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc99578f7-ef8c-4639-a314-723c8fae6ce6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"058f1fa5-553a-40f7-bc43-e6679243e3f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.5298555} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.56884,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b0f03440-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6","object_type":"device","rebac_allow":false,"scope_allow":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":"b0f03440-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0f03440-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling 200 12ms","method":"POST","requestID":"b0f03440-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/455794aa-713a-42f2-914f-251f744e113c","requestID":"91630f192f20e1f74d7e80221cc06abe"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/455794aa-713a-42f2-914f-251f744e113c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.192","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91630f192f20e1f74d7e80221cc06abe"} experiment-1 | {"level":"info","message":"DELETE /experiments/455794aa-713a-42f2-914f-251f744e113c 204 190ms","method":"DELETE","requestID":"91630f192f20e1f74d7e80221cc06abe","responseTime":190,"status":204,"url":"/experiments/455794aa-713a-42f2-914f-251f744e113c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"49deb416111585be6b4eb68649987ebd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49deb416111585be6b4eb68649987ebd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 161ms","method":"POST","requestID":"301cbec5d3a62767d19f520871a5a52a","responseTime":161,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"49deb416111585be6b4eb68649987ebd"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.166","http_referrer":"","http_user_agent":"node-fetch","requestID":"301cbec5d3a62767d19f520871a5a52a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"1.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":"07450809acb904a46cff49028f77ee73"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 163ms","method":"POST","requestID":"a3c2d2fff7f82d12d4837cc00febea2e","responseTime":163,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.167","http_referrer":"","http_user_agent":"node-fetch","requestID":"a3c2d2fff7f82d12d4837cc00febea2e"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"1.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":"360404b24ad5f94f9e10a9a7d32e9b31"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.93757,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"49deb416111585be6b4eb68649987ebd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","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/e586a13d-e161-4d66-adc4-821907e26465' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c99578f7-ef8c-4639-a314-723c8fae6ce6' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"421cbc3d-55ce-48e7-bc1a-bcb5d13016a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.6501822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4408bb4f-65f6-4545-9842-4ed3586b0541","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.6556304} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2ec548e0-4520-4569-b4c8-1fee1c53eb40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.6694882} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6da2c3d5-39fa-4315-aab5-668f38a6f75c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.669632} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"c9d64559-7892-4539-8cf5-933cfad2f402","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.6744103} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"49deb416111585be6b4eb68649987ebd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49deb416111585be6b4eb68649987ebd"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"49deb416111585be6b4eb68649987ebd","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY","level":"info","message":"auth send jwt","requestID":"26af42b6b57160df264bc25719643d87"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"26af42b6b57160df264bc25719643d87","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"26af42b6b57160df264bc25719643d87"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.650102,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"26af42b6b57160df264bc25719643d87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049563,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2M30.p9xQLd5PI7P-LHHQpbvfIqm9GGl38SQyaHbPWOTgLsY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"963fa8a2-ecae-4118-8fca-789156c276d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.7031286} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d8292ef-97d8-48d7-b996-b338a8c558b2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.70765} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7c95823b-4402-43a4-8eef-6a4a38aa1736","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.7164426} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2b2161b-614e-4a1d-8005-f33cf2f075c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.7165868} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"133e9920-58f6-4be7-ba76-f3e1176c50f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049563.721305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"26af42b6b57160df264bc25719643d87"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"26af42b6b57160df264bc25719643d87","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26af42b6b57160df264bc25719643d87"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NH0.6VZPkQx7HFbZImVm4iA6GhZesbhHST8HoxoVLrB7_O8","level":"info","message":"auth send jwt","requestID":"d180a3b508a74fc3a00f18260d7bd248"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d180a3b508a74fc3a00f18260d7bd248","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d180a3b508a74fc3a00f18260d7bd248"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.123375,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d180a3b508a74fc3a00f18260d7bd248","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049564,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NH0.6VZPkQx7HFbZImVm4iA6GhZesbhHST8HoxoVLrB7_O8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d180a3b508a74fc3a00f18260d7bd248","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"c516717d-103d-4913-8271-63f83039642d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049564.2596524} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d180a3b508a74fc3a00f18260d7bd248","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"864d4c8d-f663-4190-9c81-a59ece97df42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049564.2680745} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d180a3b508a74fc3a00f18260d7bd248","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"4f46236c-e9d9-45a4-8ccc-bbda92666f78","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049564.2921948} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d180a3b508a74fc3a00f18260d7bd248","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d180a3b508a74fc3a00f18260d7bd248"} device-1 | {"level":"info","message":"PATCH /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3 200 54ms","method":"PATCH","requestID":"d180a3b508a74fc3a00f18260d7bd248","responseTime":54,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"} gateway-1 | {"time_local":"22/Sep/2024:23:59:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.062","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d180a3b508a74fc3a00f18260d7bd248"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NH0.6VZPkQx7HFbZImVm4iA6GhZesbhHST8HoxoVLrB7_O8","level":"info","message":"auth send jwt","requestID":"06205a29f4b5fa8e582b13919fb9e76b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"06205a29f4b5fa8e582b13919fb9e76b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"06205a29f4b5fa8e582b13919fb9e76b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185944,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"06205a29f4b5fa8e582b13919fb9e76b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049564,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NH0.6VZPkQx7HFbZImVm4iA6GhZesbhHST8HoxoVLrB7_O8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"06205a29f4b5fa8e582b13919fb9e76b","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"06205a29f4b5fa8e582b13919fb9e76b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"06205a29f4b5fa8e582b13919fb9e76b"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/websocket 200 26ms","method":"POST","requestID":"06205a29f4b5fa8e582b13919fb9e76b","responseTime":26,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"966bf05d824dc9c529f57e52996c6369","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"966bf05d824dc9c529f57e52996c6369","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/155e2b15-f58f-414e-80d4-50efed891289/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":"966bf05d824dc9c529f57e52996c6369"} device-1 | {"level":"info","message":"OPTIONS /devices/155e2b15-f58f-414e-80d4-50efed891289/websocket 200 1ms","method":"OPTIONS","requestID":"966bf05d824dc9c529f57e52996c6369","responseTime":1,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4","level":"info","message":"auth send jwt","requestID":"381edb048fd1ba75e7c898d1315ead39"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"381edb048fd1ba75e7c898d1315ead39","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"381edb048fd1ba75e7c898d1315ead39"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22315,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"381edb048fd1ba75e7c898d1315ead39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"381edb048fd1ba75e7c898d1315ead39","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"381edb048fd1ba75e7c898d1315ead39"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"381edb048fd1ba75e7c898d1315ead39"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/websocket 200 27ms","method":"POST","requestID":"381edb048fd1ba75e7c898d1315ead39","responseTime":27,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f0608ea3e5709241a1389d2275f6ba1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7f0608ea3e5709241a1389d2275f6ba1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/155e2b15-f58f-414e-80d4-50efed891289? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"7f0608ea3e5709241a1389d2275f6ba1"} device-1 | {"level":"info","message":"OPTIONS /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 1ms","method":"OPTIONS","requestID":"7f0608ea3e5709241a1389d2275f6ba1","responseTime":1,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4","level":"info","message":"auth send jwt","requestID":"3258e2bef6f3b10bcc024f4f76d08463"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3258e2bef6f3b10bcc024f4f76d08463","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3258e2bef6f3b10bcc024f4f76d08463"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207871,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3258e2bef6f3b10bcc024f4f76d08463","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3258e2bef6f3b10bcc024f4f76d08463","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"a4ed0410-50e9-4ae7-ac80-b113bc063687","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049565.8593664} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3258e2bef6f3b10bcc024f4f76d08463","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5d987e4-d1fc-4d19-9424-658f6f750be2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049565.8686824} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"3258e2bef6f3b10bcc024f4f76d08463","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"08b43069-c512-4cdf-b9fb-627fed04382e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049565.8823261} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3258e2bef6f3b10bcc024f4f76d08463","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3258e2bef6f3b10bcc024f4f76d08463"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/155e2b15-f58f-414e-80d4-50efed891289? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.051","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":"3258e2bef6f3b10bcc024f4f76d08463"} device-1 | {"level":"info","message":"PATCH /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 44ms","method":"PATCH","requestID":"3258e2bef6f3b10bcc024f4f76d08463","responseTime":44,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4","level":"info","message":"auth send jwt","requestID":"1f005f4a41f46c2b399751986ced9661"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1f005f4a41f46c2b399751986ced9661","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f005f4a41f46c2b399751986ced9661"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257723,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1f005f4a41f46c2b399751986ced9661","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1f005f4a41f46c2b399751986ced9661","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"ae9bb166-16dc-4cee-b45f-cdf147d0f20f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049565.9168363} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1f005f4a41f46c2b399751986ced9661","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f005f4a41f46c2b399751986ced9661"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f005f4a41f46c2b399751986ced9661"} device-1 | {"level":"info","message":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 20ms","method":"GET","requestID":"1f005f4a41f46c2b399751986ced9661","responseTime":20,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4","level":"info","message":"auth send jwt","requestID":"891be2cc815a2c0293aafa7942f9367f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"891be2cc815a2c0293aafa7942f9367f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"891be2cc815a2c0293aafa7942f9367f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217785,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"891be2cc815a2c0293aafa7942f9367f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"891be2cc815a2c0293aafa7942f9367f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"f4ab8122-d7a1-464a-b254-08b3d6cb2707","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049565.9463377} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"891be2cc815a2c0293aafa7942f9367f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"891be2cc815a2c0293aafa7942f9367f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"891be2cc815a2c0293aafa7942f9367f"} device-1 | {"level":"info","message":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? 200 19ms","method":"GET","requestID":"891be2cc815a2c0293aafa7942f9367f","responseTime":19,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4","level":"info","message":"auth send jwt","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.126216,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to run experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to book experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully booked experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b26dd390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b26e21b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.004966,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b26dd390-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b26dd390-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.756349,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b26e21b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b26e21b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"47a0c786-6167-485b-8aa6-f34f1ab699c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.0385845} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b26dd390-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"ce461b05-4844-4eed-8465-e3f159cdd412","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.040245} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b26e21b0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b26dd390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 22ms","method":"GET","requestID":"b26dd390-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b26e21b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? 200 22ms","method":"GET","requestID":"b26e21b0-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Setting up experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully set up experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b27b4110-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b27b8f30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b27bdd50-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully running experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.779578,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b27b4110-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b27b4110-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.626951,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b27b8f30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b27b8f30-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"eaf77d3c-bad9-4daf-b756-5bc5056d2e80","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.132494} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"8e626053-c685-4fe2-8c0f-8f68a355e578","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.134623} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b27b4110-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b27b8f30-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba62307c-f592-4fb1-a264-d344b559871a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.1392128} authorization-1 | {"client_addr":"127.0.0.1:46572","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46572","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.788138,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b27bdd50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","rebac_allow":false,"scope_allow":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":"b27bdd50-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b27b4110-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 35ms","method":"GET","requestID":"b27b4110-793e-11ef-9733-5750b05365a5","responseTime":35,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b27b8f30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? 200 35ms","method":"GET","requestID":"b27b8f30-793e-11ef-9733-5750b05365a5","responseTime":35,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55a0e0f1-a3ed-4761-af47-3073da62648c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55a0e0f1-a3ed-4761-af47-3073da62648c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"73709cb2-76ee-4a16-9184-cbbc4c916f0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.1506941} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b27bdd50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/signaling 200 36ms","method":"POST","requestID":"b27bdd50-793e-11ef-9733-5750b05365a5","responseTime":36,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d22ce64-7632-4ece-835a-bc6fc5c67317","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.151587} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b281d0c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b28245f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0b2e672-bf72-4ec6-9d89-13bb3ef6fd2a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.1653879} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.581833,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b281d0c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","rebac_allow":false,"scope_allow":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":"b281d0c0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85fcc470-ba4d-472b-92ee-55beb37a84aa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.1695113} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.17413,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b281d0c0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/signaling 200 18ms","method":"POST","requestID":"b281d0c0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/signaling"} gateway-1 | {"time_local":"22/Sep/2024:23:59:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.218","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 210ms","method":"POST","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d","responseTime":210,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b28245f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","rebac_allow":false,"scope_allow":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":"b28245f0-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b285c860-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Nn0.KOjSw1kkVruvQfEZv-N2FzJmxcHhmoVmbqxRyivoF5o","level":"info","message":"auth send jwt","requestID":"ee5db71f0382fb660e99400bbad2cb63"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ee5db71f0382fb660e99400bbad2cb63","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4d7443b-6f5d-4993-9bbe-019108b0f543","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.190751} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.679945,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b285c860-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","rebac_allow":false,"scope_allow":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":"b285c860-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee5db71f0382fb660e99400bbad2cb63"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b28245f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling 200 40ms","method":"POST","requestID":"b28245f0-793e-11ef-9733-5750b05365a5","responseTime":40,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.886609,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee5db71f0382fb660e99400bbad2cb63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049566,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Nn0.KOjSw1kkVruvQfEZv-N2FzJmxcHhmoVmbqxRyivoF5o"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b285c860-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ee5db71f0382fb660e99400bbad2cb63","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling 200 21ms","method":"POST","requestID":"b285c860-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b28971e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b289c000-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"0cedaf9e-3fae-4aec-ad7e-0b4169f59fac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.209253} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ee5db71f0382fb660e99400bbad2cb63","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.011106,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b28971e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b28971e0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee5db71f0382fb660e99400bbad2cb63"} authorization-1 | {"client_addr":"127.0.0.1:46566","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.531188,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee5db71f0382fb660e99400bbad2cb63"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b289c000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} device-1 | {"level":"info","message":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 25ms","method":"GET","requestID":"ee5db71f0382fb660e99400bbad2cb63","responseTime":25,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b289c000-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.669478945Z"}]},"request_id":"cd8f0b71-81f4-4af2-9c79-285526e8dfda","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.224165} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Nn0.KOjSw1kkVruvQfEZv-N2FzJmxcHhmoVmbqxRyivoF5o","level":"info","message":"auth send jwt","requestID":"82033f44c52f7790ea6d6268052fbab7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b28971e0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"82033f44c52f7790ea6d6268052fbab7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"cac9a2c5-6b7a-4434-bc68-6ba6b65bd2e6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.2263722} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b289c000-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82033f44c52f7790ea6d6268052fbab7"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b28971e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} device-1 | {"level":"info","message":"GET /devices/155e2b15-f58f-414e-80d4-50efed891289? 200 28ms","method":"GET","requestID":"b28971e0-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b289c000-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141824,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} device-1 | {"level":"info","message":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? 200 28ms","method":"GET","requestID":"b289c000-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"82033f44c52f7790ea6d6268052fbab7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049566,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2Nn0.KOjSw1kkVruvQfEZv-N2FzJmxcHhmoVmbqxRyivoF5o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"82033f44c52f7790ea6d6268052fbab7","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Building connection plan","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"334f6558-1466-43f7-ba51-3383a50eb33e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"2b66cf17-0ab3-498a-800f-fd82d379b640"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2e3f64b5-415d-4289-9f77-d45930b3fe9f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:23.716429223Z"}]},"request_id":"1a2704f6-bacb-47e1-a09e-644ba7ed7a08","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.2429924} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"82033f44c52f7790ea6d6268052fbab7","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.916751,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b28f1730-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049565,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2NX0.tQJOHSxOZ-w3BJHA2T5ICNYy1Dk7xI2Z1ZYgK4D5oz4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b28f1730-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82033f44c52f7790ea6d6268052fbab7"} gateway-1 | {"time_local":"22/Sep/2024:23:59:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82033f44c52f7790ea6d6268052fbab7"} device-1 | {"level":"info","message":"GET /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3? 200 23ms","method":"GET","requestID":"82033f44c52f7790ea6d6268052fbab7","responseTime":23,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c3e22b5d-549b-445b-8141-85aedd226f26","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.2632434} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"370f4343-b402-4a94-b532-edd32c90b5a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.263557} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"b28f1730-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12'","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12'","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"b28f1730-793e-11ef-9733-5750b05365a5","responseTime":39,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b28f1730-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3ef3e6062cdf9ed926148c6ecf3e9a5d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b29b7340-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47549ee1-1b60-4860-80ea-9f5ab83f1e8b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.3288765} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.474019,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b29b7340-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b29b7340-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b29b7340-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/signaling 200 9ms","method":"POST","requestID":"b29b7340-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b29d4800-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fca4185a-4adb-495a-8fea-3386896a26b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049566.3412454} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.01549,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b29d4800-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","rebac_allow":false,"scope_allow":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":"b29d4800-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b29d4800-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling 200 10ms","method":"POST","requestID":"b29d4800-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling"} device-1 | {"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1931682957074019704 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:VhYz\r\na=ice-pwd:KgWb77LIbiKe+/TNSdp65xNK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 17:A0:1E:F3:94:1C:2C:78:4E:B3:79:11:55:3A:0A:C0:68:73:B3:07:99:C8:A4:CA:9E:F3:76:F0:AD:02:42:A7\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/11b93632-abf8-4485-9672-84b9617c9e12' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f08a8a2045d0a9127ade6773cffcc499","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f08a8a2045d0a9127ade6773cffcc499","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"}}},"level":"info","message":"received a callback","requestID":"f08a8a2045d0a9127ade6773cffcc499"} device-1 | {"content":{"candidate":"candidate:1482124684 1 udp 2113937151 cda39906-2993-4256-a7f0-ef9cb0876d9d.local 60983 typ host generation 0 ufrag VhYz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3413953695 1 udp 1677729535 141.24.211.56 60983 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag VhYz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1968207725 1 udp 33562623 141.24.210.113 58014 typ relay raddr 141.24.211.56 rport 60983 generation 0 ufrag VhYz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"f08a8a2045d0a9127ade6773cffcc499","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"f08a8a2045d0a9127ade6773cffcc499"} device-1 | {"device":"155e2b15-f58f-414e-80d4-50efed891289","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/155e2b15-f58f-414e-80d4-50efed891289'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289'"} device-1 | {"data":{"peerconnection":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"11b93632-abf8-4485-9672-84b9617c9e12","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/11b93632-abf8-4485-9672-84b9617c9e12' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"22992672e665eb8e628e05763f99b18f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"22992672e665eb8e628e05763f99b18f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"}}},"level":"info","message":"received a callback","requestID":"22992672e665eb8e628e05763f99b18f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b3dd4210-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11b93632-abf8-4485-9672-84b9617c9e12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"896ca3c5-fdbe-466d-9b91-a6c1f99e53c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.441879} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.695845,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3dd4210-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12","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":"b3dd4210-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b3dd4210-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/11b93632-abf8-4485-9672-84b9617c9e12 200 15ms","method":"GET","requestID":"b3dd4210-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"22992672e665eb8e628e05763f99b18f","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +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":"22992672e665eb8e628e05763f99b18f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3e33580-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd6997ac-e6a0-41b6-8568-0476e5978aff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.4773643} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.076323,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3e33580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","rebac_allow":false,"scope_allow":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":"b3e33580-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3e33580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling 200 13ms","method":"POST","requestID":"b3e33580-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3e5a680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69b47da7-226d-4fcc-839a-131abcb23dc7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.496256} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.798057,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3e5a680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","rebac_allow":false,"scope_allow":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":"b3e5a680-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3e5a680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/signaling 200 15ms","method":"POST","requestID":"b3e5a680-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U","level":"info","message":"auth send jwt","requestID":"7ec64abd5f95c81b5af462f120c20d74"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7ec64abd5f95c81b5af462f120c20d74","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","requestID":"7ec64abd5f95c81b5af462f120c20d74"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.165944,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7ec64abd5f95c81b5af462f120c20d74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049568,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ec64abd5f95c81b5af462f120c20d74","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","requestID":"7ec64abd5f95c81b5af462f120c20d74"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ec64abd5f95c81b5af462f120c20d74"} experiment-1 | {"level":"info","message":"GET /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c 200 20ms","method":"GET","requestID":"7ec64abd5f95c81b5af462f120c20d74","responseTime":20,"status":200,"url":"/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U","level":"info","message":"auth send jwt","requestID":"45fb2c566bf518bceac196e63a413840"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"45fb2c566bf518bceac196e63a413840","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","requestID":"45fb2c566bf518bceac196e63a413840"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.307843,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"45fb2c566bf518bceac196e63a413840","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049568,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45fb2c566bf518bceac196e63a413840","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Attempting to finish experiment","requestID":"45fb2c566bf518bceac196e63a413840"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.653853,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049568,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12","device":"155e2b15-f58f-414e-80d4-50efed891289","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/11b93632-abf8-4485-9672-84b9617c9e12' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11b93632-abf8-4485-9672-84b9617c9e12': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11b93632-abf8-4485-9672-84b9617c9e12","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"5e3259df-ff5c-4bb4-8cd7-5a5383a861ea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.5891314} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d14a86285c9a03005fde8ea793eca6e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f7e25582-b698-42c4-84cb-0a3db089dd74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.5894191} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d14a86285c9a03005fde8ea793eca6e0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9e293ec47e4c361456553945b1ec6c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e9e293ec47e4c361456553945b1ec6c0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"}}},"level":"info","message":"received a callback","requestID":"d14a86285c9a03005fde8ea793eca6e0"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"}}},"level":"info","message":"received a callback","requestID":"e9e293ec47e4c361456553945b1ec6c0"} device-1 | {"data":{"peerconnection":"11b93632-abf8-4485-9672-84b9617c9e12","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/11b93632-abf8-4485-9672-84b9617c9e12 204 55ms","method":"DELETE","requestID":"b3f07bf0-793e-11ef-9733-5750b05365a5","responseTime":55,"status":204,"url":"/peerconnections/11b93632-abf8-4485-9672-84b9617c9e12"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"},"level":"info","message":"Successfully finished experiment","requestID":"45fb2c566bf518bceac196e63a413840"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3fdc260-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38ac2ac-bf91-4f10-b87a-8cbd434ecce3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"075947e8-97c5-4fdb-aa70-9999d0ff651b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.6643329} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":12.944952,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3fdc260-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3","object_type":"device","rebac_allow":false,"scope_allow":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":"b3fdc260-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3fdc260-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling 200 31ms","method":"POST","requestID":"b3fdc260-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b402f280-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55a0e0f1-a3ed-4761-af47-3073da62648c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55a0e0f1-a3ed-4761-af47-3073da62648c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"a8fac835-b215-4e1f-b762-85cfbdda58bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.6816485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f00ba1d5-0c8e-4380-857b-42bd1040114f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.6819577} authorization-1 | {"level":"info","message":"POST /relations/update 200 41ms","method":"POST","requestID":"45fb2c566bf518bceac196e63a413840","responseTime":41,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F155e2b15-f58f-414e-80d4-50efed891289","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53098277-ceb1-4025-9c86-4739a983a934","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.6842668} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.956125,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b402f280-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/155e2b15-f58f-414e-80d4-50efed891289","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b402f280-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b402f280-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/155e2b15-f58f-414e-80d4-50efed891289/signaling 200 9ms","method":"POST","requestID":"b402f280-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/155e2b15-f58f-414e-80d4-50efed891289/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c","requestID":"45fb2c566bf518bceac196e63a413840"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.228","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45fb2c566bf518bceac196e63a413840"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3423","request_time":"4.428","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1255949b34464b0de8d967c4cb186a82"} experiment-1 | {"level":"info","message":"DELETE /experiments/55a0e0f1-a3ed-4761-af47-3073da62648c 204 228ms","method":"DELETE","requestID":"45fb2c566bf518bceac196e63a413840","responseTime":228,"status":204,"url":"/experiments/55a0e0f1-a3ed-4761-af47-3073da62648c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 174ms","method":"POST","requestID":"d14a86285c9a03005fde8ea793eca6e0","responseTime":174,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +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":"d14a86285c9a03005fde8ea793eca6e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U","level":"info","message":"auth send jwt","requestID":"2126e3bbf018ef9f37a360bc35a5b85b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 173ms","method":"POST","requestID":"e9e293ec47e4c361456553945b1ec6c0","responseTime":174,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +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":"e9e293ec47e4c361456553945b1ec6c0"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +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.977","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":"f628982d6e36ede8da415eb1b4f34c55"} device-1 | {"level":"info","message":"postDevices called","requestID":"2126e3bbf018ef9f37a360bc35a5b85b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.834729,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2126e3bbf018ef9f37a360bc35a5b85b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049568,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","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/a38ac2ac-bf91-4f10-b87a-8cbd434ecce3' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9ec93a88-18be-4f10-a73e-2a9f502a26f0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.7982304} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","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/155e2b15-f58f-414e-80d4-50efed891289' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b27c0a37-2972-4720-bde9-d745fde50435","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8042877} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"45ab2422-e050-4d10-a968-cdd89a8327eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.813923} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1cbceea-711c-47b8-91c1-bd9f3ecde141","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8140302} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"4558173f-1c89-4957-bf5c-066bf908ac04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8189573} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2126e3bbf018ef9f37a360bc35a5b85b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2126e3bbf018ef9f37a360bc35a5b85b"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"2126e3bbf018ef9f37a360bc35a5b85b","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U","level":"info","message":"auth send jwt","requestID":"f4c7b35a9482a37ce1f4568fc0027355"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4c7b35a9482a37ce1f4568fc0027355","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f4c7b35a9482a37ce1f4568fc0027355"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.861453,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4c7b35a9482a37ce1f4568fc0027355","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049568,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OH0.oKhvIPVjQ2-CaTu8vn88SIB7cGMnbekrpwcwlhrbv1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7417b833-3b7f-40ff-a245-3b815d6c363d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.850461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc97b459-cb8e-4ee4-b2d6-983541ea7d96","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8559704} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3fcc536b-e2d0-4909-a75a-4f696c2c1970","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8678782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22e6ca4b-60fa-4865-bdac-be34953190d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8680139} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"dbb6c66c-e746-4d9c-aab2-f951d7547e72","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049568.8733337} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f4c7b35a9482a37ce1f4568fc0027355"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"f4c7b35a9482a37ce1f4568fc0027355","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4c7b35a9482a37ce1f4568fc0027355"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OX0.xz7dGFcvvg2uCuI7ywE_JVYMiUdjZ1byIaWMpW3LpOU","level":"info","message":"auth send jwt","requestID":"27186033149c4bcc4e61c1d35108a5bd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"27186033149c4bcc4e61c1d35108a5bd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"27186033149c4bcc4e61c1d35108a5bd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:29Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90961,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"27186033149c4bcc4e61c1d35108a5bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049569,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OX0.xz7dGFcvvg2uCuI7ywE_JVYMiUdjZ1byIaWMpW3LpOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"27186033149c4bcc4e61c1d35108a5bd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"4ad22bec-af04-465a-abcc-d7a9a8fb3747","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049569.3996453} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"27186033149c4bcc4e61c1d35108a5bd","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83a8a30d-b1f6-48b6-ae39-3c0b2af0fede","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049569.4079802} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"27186033149c4bcc4e61c1d35108a5bd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"191fbaa1-455a-4c52-9e8c-9b78f21a6053","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049569.4221861} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27186033149c4bcc4e61c1d35108a5bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"27186033149c4bcc4e61c1d35108a5bd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"27186033149c4bcc4e61c1d35108a5bd"} device-1 | {"level":"info","message":"PATCH /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6 200 43ms","method":"PATCH","requestID":"27186033149c4bcc4e61c1d35108a5bd","responseTime":43,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OX0.xz7dGFcvvg2uCuI7ywE_JVYMiUdjZ1byIaWMpW3LpOU","level":"info","message":"auth send jwt","requestID":"96f36ec49e2f1a5266c299769bf84a00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"96f36ec49e2f1a5266c299769bf84a00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"96f36ec49e2f1a5266c299769bf84a00"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:29Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114779,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"96f36ec49e2f1a5266c299769bf84a00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049569,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU2OX0.xz7dGFcvvg2uCuI7ywE_JVYMiUdjZ1byIaWMpW3LpOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"96f36ec49e2f1a5266c299769bf84a00","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"96f36ec49e2f1a5266c299769bf84a00"} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/websocket 200 24ms","method":"POST","requestID":"96f36ec49e2f1a5266c299769bf84a00","responseTime":24,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/websocket"} gateway-1 | {"time_local":"22/Sep/2024:23:59:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"96f36ec49e2f1a5266c299769bf84a00"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7baeacf49f867d7ff17c10f067d7b2ba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7baeacf49f867d7ff17c10f067d7b2ba","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/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":"7baeacf49f867d7ff17c10f067d7b2ba"} device-1 | {"level":"info","message":"OPTIONS /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/websocket 200 2ms","method":"OPTIONS","requestID":"7baeacf49f867d7ff17c10f067d7b2ba","responseTime":2,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MH0.ICCLAfcLw-ueZUDhtsSWD-NM8OnQbtcILjmm0eoC1S8","level":"info","message":"auth send jwt","requestID":"59adf60c0ceeaf1d28b513a6965d4401"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"59adf60c0ceeaf1d28b513a6965d4401","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"59adf60c0ceeaf1d28b513a6965d4401"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.14574,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"59adf60c0ceeaf1d28b513a6965d4401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049570,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MH0.ICCLAfcLw-ueZUDhtsSWD-NM8OnQbtcILjmm0eoC1S8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"59adf60c0ceeaf1d28b513a6965d4401","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"59adf60c0ceeaf1d28b513a6965d4401"} gateway-1 | {"time_local":"22/Sep/2024:23:59:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"59adf60c0ceeaf1d28b513a6965d4401"} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/websocket 200 34ms","method":"POST","requestID":"59adf60c0ceeaf1d28b513a6965d4401","responseTime":34,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5530324ca82a83b718005c1e37a2eebe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5530324ca82a83b718005c1e37a2eebe","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"5530324ca82a83b718005c1e37a2eebe"} device-1 | {"level":"info","message":"OPTIONS /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 1ms","method":"OPTIONS","requestID":"5530324ca82a83b718005c1e37a2eebe","responseTime":1,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MH0.ICCLAfcLw-ueZUDhtsSWD-NM8OnQbtcILjmm0eoC1S8","level":"info","message":"auth send jwt","requestID":"c987421bf5fecbf5dac17a95d205d687"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c987421bf5fecbf5dac17a95d205d687","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c987421bf5fecbf5dac17a95d205d687"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231355,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c987421bf5fecbf5dac17a95d205d687","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049570,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MH0.ICCLAfcLw-ueZUDhtsSWD-NM8OnQbtcILjmm0eoC1S8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c987421bf5fecbf5dac17a95d205d687","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"e94caf9c-13c2-47e8-a351-6cf076ec14eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.0214918} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"c987421bf5fecbf5dac17a95d205d687","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddb09ede-9a5f-491d-be78-2ddef106f208","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.0327818} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c987421bf5fecbf5dac17a95d205d687","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"9a087251-418d-4318-995b-c93f7daad099","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.0476992} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c987421bf5fecbf5dac17a95d205d687","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c987421bf5fecbf5dac17a95d205d687"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.056","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":"c987421bf5fecbf5dac17a95d205d687"} device-1 | {"level":"info","message":"PATCH /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 49ms","method":"PATCH","requestID":"c987421bf5fecbf5dac17a95d205d687","responseTime":49,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ","level":"info","message":"auth send jwt","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050727,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"ef95a436-9428-4c11-ab34-3cef249fb2e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.0789492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59"} device-1 | {"level":"info","message":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? 200 20ms","method":"GET","requestID":"9f03ebcc0ab0e3c41b17bf0d6d936a59","responseTime":20,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ","level":"info","message":"auth send jwt","requestID":"a3e22e4589c2df497da9c7ef45b7217b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3e22e4589c2df497da9c7ef45b7217b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3e22e4589c2df497da9c7ef45b7217b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165525,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a3e22e4589c2df497da9c7ef45b7217b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a3e22e4589c2df497da9c7ef45b7217b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"2017276d-a3cc-48cc-a546-77e089c9083c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.109369} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a3e22e4589c2df497da9c7ef45b7217b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3e22e4589c2df497da9c7ef45b7217b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3e22e4589c2df497da9c7ef45b7217b"} device-1 | {"level":"info","message":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 21ms","method":"GET","requestID":"a3e22e4589c2df497da9c7ef45b7217b","responseTime":21,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ","level":"info","message":"auth send jwt","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.217826,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to run experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to book experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully booked experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b580dff0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5812e10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621343,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b580dff0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b580dff0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.006292,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b5812e10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b5812e10-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"a9367b36-dc9d-463b-9a1e-75ec3d27621a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.198419} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b580dff0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"3cdc7d07-c74e-4c98-8854-db1724fb3b4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.204216} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b580dff0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5812e10-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? 200 23ms","method":"GET","requestID":"b580dff0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5812e10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 24ms","method":"GET","requestID":"b5812e10-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Setting up experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully set up experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b58d6310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b58dd840-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully running experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b58e9b90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.549954,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b58d6310-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b58d6310-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163859,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b58dd840-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b58dd840-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"f509ac89-0d46-4dd7-89a5-e43f5b84f541","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.2921674} authorization-1 | {"client_addr":"127.0.0.1:46586","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b58d6310-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"6a45d776-e388-4dbf-8232-b0c6f659fa61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.2952714} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d140e19-6af6-4b42-8e93-f706a8aa31bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.2961383} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b58dd840-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46586","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.984687,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b58e9b90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","rebac_allow":false,"scope_allow":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":"b58e9b90-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb9b3a092-3555-43af-ac20-e93146027361#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb9b3a092-3555-43af-ac20-e93146027361","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"94d994c7-1dc7-46b6-9ed8-e5e6c73c7c8d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3075595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ef0d64f-4083-4fa8-986c-e485a81edeb3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.307975} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b58d6310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? 200 46ms","method":"GET","requestID":"b58d6310-793e-11ef-9733-5750b05365a5","responseTime":46,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b58dd840-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 45ms","method":"GET","requestID":"b58dd840-793e-11ef-9733-5750b05365a5","responseTime":45,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b58e9b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling 200 41ms","method":"POST","requestID":"b58e9b90-793e-11ef-9733-5750b05365a5","responseTime":41,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b595c780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b59615a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a693495e-91b6-4bdb-9f27-46f8c1d7404d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3276653} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.208","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 202ms","method":"POST","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c","responseTime":202,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.764103,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b595c780-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","rebac_allow":false,"scope_allow":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":"b595c780-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32b666d1-e4bd-4626-ace6-f85759064b6d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.330988} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.078584,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b59615a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","rebac_allow":false,"scope_allow":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":"b59615a0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ","level":"info","message":"auth send jwt","requestID":"d650db037d17c98744680e73f9748ecb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d650db037d17c98744680e73f9748ecb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b595c780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling 200 18ms","method":"POST","requestID":"b595c780-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d650db037d17c98744680e73f9748ecb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b59922e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b59615a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling 200 21ms","method":"POST","requestID":"b59615a0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354453,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d650db037d17c98744680e73f9748ecb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d650db037d17c98744680e73f9748ecb","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b48adca3-4edd-4adc-8b20-4ac5d90e55d4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3490388} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.85319,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b59922e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","rebac_allow":false,"scope_allow":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":"b59922e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b59922e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"90b0991c-8653-4e59-ad0f-c40c694121fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3566413} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling 200 15ms","method":"POST","requestID":"b59922e0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d650db037d17c98744680e73f9748ecb","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b59be200-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b59c3020-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d650db037d17c98744680e73f9748ecb"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d650db037d17c98744680e73f9748ecb"} device-1 | {"level":"info","message":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? 200 25ms","method":"GET","requestID":"d650db037d17c98744680e73f9748ecb","responseTime":25,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850751,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b59be200-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b59be200-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927872,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b59c3020-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b59c3020-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ","level":"info","message":"auth send jwt","requestID":"ff42c58a00919c51db80df291081154f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ff42c58a00919c51db80df291081154f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff42c58a00919c51db80df291081154f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.813910547Z"}]},"request_id":"bc0481a2-f2bf-40c5-bd3d-9de949e4a459","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3713546} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b59be200-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"046b0820-5cb3-4f60-b9cc-bc311303ad62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3729382} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b59c3020-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835081,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b59be200-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff42c58a00919c51db80df291081154f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} device-1 | {"level":"info","message":"GET /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6? 200 18ms","method":"GET","requestID":"b59be200-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff42c58a00919c51db80df291081154f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b59c3020-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 17ms","method":"GET","requestID":"b59c3020-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Building connection plan","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"1eaac235-9888-4710-83b3-a1370c428061"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"32ddfc40-ce6a-43d4-8970-d0e7de7e01c3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"906143c2-cf5a-4600-b2f0-904c522074fe"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:28.867865441Z"}]},"request_id":"475465b5-6a06-45d3-b6cf-b82f01298631","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3838475} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff42c58a00919c51db80df291081154f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.157049,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b59f6470-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049571,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3MX0.7e1T3meac9Iil1XBcjpj90fvZ0wwcMC2C6g6WLkpzUQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b59f6470-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff42c58a00919c51db80df291081154f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff42c58a00919c51db80df291081154f"} device-1 | {"level":"info","message":"GET /devices/1ff6b694-bb70-402e-978c-6c1050c5373a? 200 18ms","method":"GET","requestID":"ff42c58a00919c51db80df291081154f","responseTime":18,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"85ef0ccb-9077-4f85-b8a4-ec45d983d816","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3989146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80784914-69f3-43c6-9f76-a96f3112ba71","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.3992403} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b59f6470-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda'","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda'","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"b59f6470-793e-11ef-9733-5750b05365a5","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b59f6470-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4eaa89b6e42d1ae45dd5ffae7e32380c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b5aa12d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27233410-424c-41d6-96f8-6e983d903dcb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.4585457} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.874142,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b5aa12d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","rebac_allow":false,"scope_allow":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":"b5aa12d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b5aa12d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling 200 13ms","method":"POST","requestID":"b5aa12d0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b5ac83d0-793e-11ef-9733-5750b05365a5"} device-1 | {"content":{"sdp":"v=0\r\no=- 858791590390086864 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:PYKJ\r\na=ice-pwd:eo+50goWdHu/koq/da7HjCm0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 11:1F:1C:43:18:C6:AA:CE:6C:28:CD:D7:23:64:95:C8:DA:9B:E3:73:4A:D8:A8:A0:8B:C3:36:CA:2E:3E:04:37\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:31Z"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a'"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a8b3f29-3c6e-4061-9548-4d089d7bdc35","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049571.4751225} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.841675,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b5ac83d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","rebac_allow":false,"scope_allow":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":"b5ac83d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b5ac83d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling 200 10ms","method":"POST","requestID":"b5ac83d0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling"} device-1 | {"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/dc70e135-f068-4bf0-a080-f7c68d2b7dda' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23cc01571e32698bb950d158a9085a71","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"23cc01571e32698bb950d158a9085a71","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"}}},"level":"info","message":"received a callback","requestID":"23cc01571e32698bb950d158a9085a71"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"23cc01571e32698bb950d158a9085a71","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"23cc01571e32698bb950d158a9085a71"} device-1 | {"content":{"candidate":"candidate:3197441147 1 udp 2113937151 ac1ed7e5-f575-403a-bbbc-8280a1ae75a7.local 55944 typ host generation 0 ufrag PYKJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:767473000 1 udp 1677729535 141.24.211.56 55944 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PYKJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2475822746 1 udp 33562623 141.24.210.113 49215 typ relay raddr 141.24.211.56 rport 55944 generation 0 ufrag PYKJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","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/1ff6b694-bb70-402e-978c-6c1050c5373a'"} device-1 | {"data":{"peerconnection":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","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/1ff6b694-bb70-402e-978c-6c1050c5373a'"} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","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/dc70e135-f068-4bf0-a080-f7c68d2b7dda' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71f2a327b5342eb0ec6819e2b8a38686","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"71f2a327b5342eb0ec6819e2b8a38686","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"}}},"level":"info","message":"received a callback","requestID":"71f2a327b5342eb0ec6819e2b8a38686"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b6e6b180-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc70e135-f068-4bf0-a080-f7c68d2b7dda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e5e3b70-a807-4e05-aec2-5e782c60e67c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.5324075} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.404951,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6e6b180-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6e6b180-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b6e6b180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda 200 8ms","method":"GET","requestID":"b6e6b180-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"71f2a327b5342eb0ec6819e2b8a38686","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"71f2a327b5342eb0ec6819e2b8a38686"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6ead030-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93cf43ba-3ebe-4ef8-aba9-725cfa2430ec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.5602124} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.440766,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6ead030-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b6ead030-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6ead030-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling 200 9ms","method":"POST","requestID":"b6ead030-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6ec7de0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"473c2eb1-ffbc-4750-b8d0-c079dbe68bc1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.5718222} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.792426,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6ec7de0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6ec7de0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6ec7de0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling 200 10ms","method":"POST","requestID":"b6ec7de0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo","level":"info","message":"auth send jwt","requestID":"4f389768b2c5355dd7c58b8afad6bb24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4f389768b2c5355dd7c58b8afad6bb24","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b9b3a092-3555-43af-ac20-e93146027361","requestID":"4f389768b2c5355dd7c58b8afad6bb24"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.080966,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4f389768b2c5355dd7c58b8afad6bb24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049573,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4f389768b2c5355dd7c58b8afad6bb24","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b9b3a092-3555-43af-ac20-e93146027361","requestID":"4f389768b2c5355dd7c58b8afad6bb24"} experiment-1 | {"level":"info","message":"GET /experiments/b9b3a092-3555-43af-ac20-e93146027361 200 13ms","method":"GET","requestID":"4f389768b2c5355dd7c58b8afad6bb24","responseTime":13,"status":200,"url":"/experiments/b9b3a092-3555-43af-ac20-e93146027361"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b9b3a092-3555-43af-ac20-e93146027361 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f389768b2c5355dd7c58b8afad6bb24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo","level":"info","message":"auth send jwt","requestID":"f785d469a150df5798637ae37f0e3f40"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f785d469a150df5798637ae37f0e3f40","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b9b3a092-3555-43af-ac20-e93146027361","requestID":"f785d469a150df5798637ae37f0e3f40"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.044725,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f785d469a150df5798637ae37f0e3f40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049573,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f785d469a150df5798637ae37f0e3f40","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Attempting to finish experiment","requestID":"f785d469a150df5798637ae37f0e3f40"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b6f69000-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.873685,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6f69000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049573,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b6f69000-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda","device":"1ff6b694-bb70-402e-978c-6c1050c5373a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4d93a72a-a3bc-41af-8e51-7f660edd49e6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/dc70e135-f068-4bf0-a080-f7c68d2b7dda' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"68f3c8c245954c33b547c10440a65233","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc70e135-f068-4bf0-a080-f7c68d2b7dda': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc70e135-f068-4bf0-a080-f7c68d2b7dda","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"f7c47218-f0e2-4878-b259-4f0969fa004f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.6504643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc6a09f1-d05d-4b56-842b-f9a80dce08f2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.6507256} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"68f3c8c245954c33b547c10440a65233","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66f56c272453b50f21cf3c84a8235b8e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"66f56c272453b50f21cf3c84a8235b8e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"b6f69000-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"}}},"level":"info","message":"received a callback","requestID":"68f3c8c245954c33b547c10440a65233"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"}}},"level":"info","message":"received a callback","requestID":"66f56c272453b50f21cf3c84a8235b8e"} device-1 | {"data":{"peerconnection":"dc70e135-f068-4bf0-a080-f7c68d2b7dda","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b6f69000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda 204 39ms","method":"DELETE","requestID":"b6f69000-793e-11ef-9733-5750b05365a5","responseTime":39,"status":204,"url":"/peerconnections/dc70e135-f068-4bf0-a080-f7c68d2b7dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b9b3a092-3555-43af-ac20-e93146027361"},"level":"info","message":"Successfully finished experiment","requestID":"f785d469a150df5798637ae37f0e3f40"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6ff4290-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d93a72a-a3bc-41af-8e51-7f660edd49e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02e3f092-7ffb-463d-94da-980a4d74a5ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.696924} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.268171,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6ff4290-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6","object_type":"device","rebac_allow":false,"scope_allow":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":"b6ff4290-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6ff4290-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb9b3a092-3555-43af-ac20-e93146027361': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb9b3a092-3555-43af-ac20-e93146027361","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"261cb1af-5f3a-4a78-befc-0ec358902352","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.7045007} device-1 | {"level":"info","message":"POST /devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/signaling 200 15ms","method":"POST","requestID":"b6ff4290-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53797c09-4e2a-41b5-ac50-be3913562332","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.704879} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f785d469a150df5798637ae37f0e3f40","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b70201b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1ff6b694-bb70-402e-978c-6c1050c5373a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a339db60-3673-4992-99aa-970030d10d28","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.7140229} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.357552,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b70201b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1ff6b694-bb70-402e-978c-6c1050c5373a","object_type":"device","rebac_allow":false,"scope_allow":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":"b70201b0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b70201b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling 200 14ms","method":"POST","requestID":"b70201b0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/1ff6b694-bb70-402e-978c-6c1050c5373a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b9b3a092-3555-43af-ac20-e93146027361","requestID":"f785d469a150df5798637ae37f0e3f40"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b9b3a092-3555-43af-ac20-e93146027361 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f785d469a150df5798637ae37f0e3f40"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3421","request_time":"4.318","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"682dd8680196d19cf4eeb3f5a3c0ebfb"} experiment-1 | {"level":"info","message":"DELETE /experiments/b9b3a092-3555-43af-ac20-e93146027361 204 157ms","method":"DELETE","requestID":"f785d469a150df5798637ae37f0e3f40","responseTime":157,"status":204,"url":"/experiments/b9b3a092-3555-43af-ac20-e93146027361"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"68f3c8c245954c33b547c10440a65233","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"68f3c8c245954c33b547c10440a65233"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"66f56c272453b50f21cf3c84a8235b8e","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"66f56c272453b50f21cf3c84a8235b8e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo","level":"info","message":"auth send jwt","requestID":"1a3182cb221b3a612c2d73146626b448"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a3182cb221b3a612c2d73146626b448","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1a3182cb221b3a612c2d73146626b448"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +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.833","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":"f4deac5e3201fb13c4b36dec6bab89a2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.770944,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4d93a72a-a3bc-41af-8e51-7f660edd49e6' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1a3182cb221b3a612c2d73146626b448","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049573,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","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/1ff6b694-bb70-402e-978c-6c1050c5373a' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b306ca7-1721-4a79-a788-70b2a8aea8ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.807615} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3bffe2b-f996-4c4b-997d-f7a7e1a2e00d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.814552} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e2c9964a-9808-41e2-ae6a-32923a5cefa8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.825544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2fbe25d5-a8ec-4140-91a5-405b8c0bf843","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.82573} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"2f64b9ed-a87b-4b10-8a28-0a9ec6087de5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8304636} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1a3182cb221b3a612c2d73146626b448"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"1a3182cb221b3a612c2d73146626b448","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a3182cb221b3a612c2d73146626b448"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo","level":"info","message":"auth send jwt","requestID":"3881c6616dd02f9002cbe8b229b22de8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3881c6616dd02f9002cbe8b229b22de8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3881c6616dd02f9002cbe8b229b22de8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.773237,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3881c6616dd02f9002cbe8b229b22de8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049573,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3M30.XPomnf57gwIgtw9ozyjbuJ9e1dAZRGmi94qd-vDOzRo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"64b580b3-b248-468e-baff-18cd5b9e15dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8552244} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dac581b-a631-4645-a291-3526c9e61c9f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8602586} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"31b03922-99f4-4c8f-9dbf-850972ac3b29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8772275} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b130c2d-b928-4fec-ab9f-086013cbbee0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8774278} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"f143b178-8182-4176-bed7-d85af8e51464","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049573.8816328} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3881c6616dd02f9002cbe8b229b22de8"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"3881c6616dd02f9002cbe8b229b22de8","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3881c6616dd02f9002cbe8b229b22de8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"520f74afb8fd034212507466d4de4ce2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"520f74afb8fd034212507466d4de4ce2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"520f74afb8fd034212507466d4de4ce2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626379,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"520f74afb8fd034212507466d4de4ce2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"520f74afb8fd034212507466d4de4ce2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"8825cf10-e00d-4479-9ae7-cdd50a0d3a13","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.3612745} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"520f74afb8fd034212507466d4de4ce2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"106fa6c5-370c-4f67-a023-3edf427a25ff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.3679323} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"520f74afb8fd034212507466d4de4ce2","responseTime":4,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"e9a149c4-3b28-4779-acfd-f2d200b2b6f5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.3796823} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"520f74afb8fd034212507466d4de4ce2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"520f74afb8fd034212507466d4de4ce2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"520f74afb8fd034212507466d4de4ce2"} device-1 | {"level":"info","message":"PATCH /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9 200 30ms","method":"PATCH","requestID":"520f74afb8fd034212507466d4de4ce2","responseTime":30,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930216,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"ddeff047-2a20-4f95-aa63-4fb8b56d1941","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.3915243} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888185,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522","responseTime":4,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e81b092-71dc-4a31-83dd-c21fb90d6f3a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.3971999} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"71bc4f9a-1bde-4c15-8398-a998e397680f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.4094255} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42"} device-1 | {"level":"info","message":"PATCH /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68 200 33ms","method":"PATCH","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42","responseTime":33,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"075e80a747c6bbf7ffd1469bcc8c5c42"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"da2462e6983ae6b7774c4fd1fd676510"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da2462e6983ae6b7774c4fd1fd676510","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522"} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/websocket 200 28ms","method":"POST","requestID":"84fc05e5d8169ddd4f4f77c1bb7a9522","responseTime":28,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"da2462e6983ae6b7774c4fd1fd676510"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724262,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"da2462e6983ae6b7774c4fd1fd676510","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da2462e6983ae6b7774c4fd1fd676510","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"da2462e6983ae6b7774c4fd1fd676510"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"da2462e6983ae6b7774c4fd1fd676510"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/websocket 200 31ms","method":"POST","requestID":"da2462e6983ae6b7774c4fd1fd676510","responseTime":31,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"fa624c67599e3732d4934cf38a6656dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fa624c67599e3732d4934cf38a6656dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa624c67599e3732d4934cf38a6656dc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686972,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fa624c67599e3732d4934cf38a6656dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fa624c67599e3732d4934cf38a6656dc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"be0b00e4-4c74-43d0-8a87-bc7979b45568","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.482606} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fa624c67599e3732d4934cf38a6656dc","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa624c67599e3732d4934cf38a6656dc"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa624c67599e3732d4934cf38a6656dc"} device-1 | {"level":"info","message":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? 200 16ms","method":"GET","requestID":"fa624c67599e3732d4934cf38a6656dc","responseTime":16,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"57ca7da7f232eb5fed4b344ab20fb037"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"57ca7da7f232eb5fed4b344ab20fb037","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57ca7da7f232eb5fed4b344ab20fb037"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868697,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"57ca7da7f232eb5fed4b344ab20fb037","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57ca7da7f232eb5fed4b344ab20fb037","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"5723a827-052c-4a4b-a3aa-bf5a7969bd42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.504989} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57ca7da7f232eb5fed4b344ab20fb037","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57ca7da7f232eb5fed4b344ab20fb037"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57ca7da7f232eb5fed4b344ab20fb037"} device-1 | {"level":"info","message":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? 200 17ms","method":"GET","requestID":"57ca7da7f232eb5fed4b344ab20fb037","responseTime":17,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"c8ae438e5693fe1f76384f1ed095800d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8ae438e5693fe1f76384f1ed095800d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c8ae438e5693fe1f76384f1ed095800d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.804478,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c8ae438e5693fe1f76384f1ed095800d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c8ae438e5693fe1f76384f1ed095800d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to run experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to book experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully booked experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b782f180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7831890-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25573,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b782f180-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b782f180-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.742875,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7831890-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b7831890-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"8a7f45ee-b0ab-4d55-9ebd-9a68df08212a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.563497} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b782f180-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"f89e16ab-9273-49b1-ae10-057220d0fc0f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.5654} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b7831890-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b782f180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? 200 18ms","method":"GET","requestID":"b782f180-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7831890-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? 200 18ms","method":"GET","requestID":"b7831890-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Setting up experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully set up experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b78bf230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b78c4050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b78c8e70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102916,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully running experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b78bf230-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b78bf230-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.020965,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b78c4050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b78c4050-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.193206,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9329eb6-fa0b-4750-9b30-e32188f16e1a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.624823} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"6f738385-167d-4a45-b06d-d8e9af8dc8cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6293304} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b78c8e70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","rebac_allow":false,"scope_allow":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":"b78c8e70-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b78c8e70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"b78bf230-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"7ab6e026-f875-4f29-95d8-cb69c03e0d40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6352465} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling 200 23ms","method":"POST","requestID":"b78c8e70-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b78c4050-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b790ad20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b78bf230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? 200 35ms","method":"GET","requestID":"b78bf230-793e-11ef-9733-5750b05365a5","responseTime":35,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b78c4050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} device-1 | {"level":"info","message":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? 200 34ms","method":"GET","requestID":"b78c4050-793e-11ef-9733-5750b05365a5","responseTime":34,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de9c3a60-fb4c-4a24-8f11-1db565c6b9a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.647195} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2ce7951-82d5-4caa-821c-8467f578d5fc#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2ce7951-82d5-4caa-821c-8467f578d5fc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8143bf6a-6db6-4bfc-8270-6b4c1b323173","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6476202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e74b2d89-4ff8-44ca-bab7-9dbd02e7c6cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6482322} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.209812,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b790ad20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","rebac_allow":false,"scope_allow":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":"b790ad20-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b791e5a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"c8ae438e5693fe1f76384f1ed095800d","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b790ad20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling 200 12ms","method":"POST","requestID":"b790ad20-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff817251-c7ff-468d-a0a5-88ef3d2f235c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6550152} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.085789,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b791e5a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","rebac_allow":false,"scope_allow":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":"b791e5a0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c8ae438e5693fe1f76384f1ed095800d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"c8ae438e5693fe1f76384f1ed095800d","responseTime":143,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b791e5a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling 200 10ms","method":"POST","requestID":"b791e5a0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b793ba60-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53865c05-c7c9-4833-85d3-7500d94fb12e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6671681} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.16963,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b793ba60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b793ba60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629644,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b793ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling 200 11ms","method":"POST","requestID":"b793ba60-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"92a6cced-56b4-4a55-864a-6587c4111aa4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.673735} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b795dd40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7960450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} device-1 | {"level":"info","message":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? 200 16ms","method":"GET","requestID":"4d9fc80ade6baf8bbb87dbfe75a22e70","responseTime":16,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707012,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b795dd40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b795dd40-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46574","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906287,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7960450-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7960450-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM","level":"info","message":"auth send jwt","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.825529678Z"}]},"request_id":"baf4f270-b4ee-4d5e-95a6-9fe4e73c8a03","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.686835} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b795dd40-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"2cf6c560-6491-4e9d-a372-16f8a8693bb1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6885374} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b7960450-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907729,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d6a4df3d92c65b3a9845accdaf91f1e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b795dd40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9? 200 17ms","method":"GET","requestID":"b795dd40-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7960450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? 200 18ms","method":"GET","requestID":"b7960450-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:33.877211002Z"}]},"request_id":"44cbaba9-bf7b-499c-baf1-22043c9801c1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.6963894} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Building connection plan","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"9ac3a187-33b7-49f3-94da-0b46a4043790"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d1fbc220-2b82-4f98-9b1b-2f9741f7f790"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7e1a37d2-4503-4a5f-b264-736f72480ea6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c8ae438e5693fe1f76384f1ed095800d"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c8ae438e5693fe1f76384f1ed095800d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7"} gateway-1 | {"time_local":"22/Sep/2024:23:59:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7"} device-1 | {"level":"info","message":"GET /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68? 200 15ms","method":"GET","requestID":"d6a4df3d92c65b3a9845accdaf91f1e7","responseTime":15,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.716547,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7995fb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049574,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3NH0.vWj6SQKvkj64xp8wNlf0ZxnpGaHaapxNO70FrH3pgSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6454d9ad-fb05-4d0f-b1fa-5eabcf483b5a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.7126732} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e36106f-777b-498b-9047-8916f4abe252","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.7128687} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4'","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4'","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"b7995fb0-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"b7995fb0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c8ae438e5693fe1f76384f1ed095800d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7a23950-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e78ec0e-dea7-44e2-85ee-05d243a96dba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.7622862} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.408985,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7a23950-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7a23950-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7a23950-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling 200 9ms","method":"POST","requestID":"b7a23950-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7a40e10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2a35bbc-364f-4ae9-8bd3-cdb1a58584ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049574.7735343} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.41278,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7a40e10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7a40e10-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7a40e10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling 200 9ms","method":"POST","requestID":"b7a40e10-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling"} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/1c91cdc7-67f4-49d3-a38a-de35219679e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c4ae34f5e5d12c122bf6d67d9c0cc5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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 3ms","method":"GET","requestID":"7c4ae34f5e5d12c122bf6d67d9c0cc5d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"}}},"level":"info","message":"received a callback","requestID":"7c4ae34f5e5d12c122bf6d67d9c0cc5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"7c4ae34f5e5d12c122bf6d67d9c0cc5d","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c4ae34f5e5d12c122bf6d67d9c0cc5d"} device-1 | {"data":{"peerconnection":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"1c91cdc7-67f4-49d3-a38a-de35219679e4","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/1c91cdc7-67f4-49d3-a38a-de35219679e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"947b99eebacbff1b2cee1843da3acf82","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"947b99eebacbff1b2cee1843da3acf82","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"}}},"level":"info","message":"received a callback","requestID":"947b99eebacbff1b2cee1843da3acf82"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b8de62d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1c91cdc7-67f4-49d3-a38a-de35219679e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35d2342b-5f9f-4b8d-bae5-92f3d85f692b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049576.8348756} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.222429,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8de62d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b8de62d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b8de62d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4 200 10ms","method":"GET","requestID":"b8de62d0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"947b99eebacbff1b2cee1843da3acf82","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"947b99eebacbff1b2cee1843da3acf82"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b8e28180-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"884003c6-b377-4a49-adb8-8b038294e9fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049576.8610945} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.48461,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8e28180-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b8e28180-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b8e28180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling 200 10ms","method":"POST","requestID":"b8e28180-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b8e45640-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29c84f33-2035-4203-93fe-51b299bd72fa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049576.874846} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.007681,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8e45640-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","rebac_allow":false,"scope_allow":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":"b8e45640-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b8e45640-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling 200 11ms","method":"POST","requestID":"b8e45640-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3Nn0.4UOrv7A0H34CR5fK5xCPPPGfYQkSbALD2MCZ01csOls","level":"info","message":"auth send jwt","requestID":"e46def73b458be1bd8a4b664c97e8a53"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e46def73b458be1bd8a4b664c97e8a53","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","requestID":"e46def73b458be1bd8a4b664c97e8a53"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.868149,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e46def73b458be1bd8a4b664c97e8a53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049576,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3Nn0.4UOrv7A0H34CR5fK5xCPPPGfYQkSbALD2MCZ01csOls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e46def73b458be1bd8a4b664c97e8a53","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","requestID":"e46def73b458be1bd8a4b664c97e8a53"} gateway-1 | {"time_local":"22/Sep/2024:23:59:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e46def73b458be1bd8a4b664c97e8a53"} experiment-1 | {"level":"info","message":"GET /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc 200 17ms","method":"GET","requestID":"e46def73b458be1bd8a4b664c97e8a53","responseTime":17,"status":200,"url":"/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3Nn0.4UOrv7A0H34CR5fK5xCPPPGfYQkSbALD2MCZ01csOls","level":"info","message":"auth send jwt","requestID":"8346aed6d798a7ffa78937942221579a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8346aed6d798a7ffa78937942221579a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","requestID":"8346aed6d798a7ffa78937942221579a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.141297,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8346aed6d798a7ffa78937942221579a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049576,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3Nn0.4UOrv7A0H34CR5fK5xCPPPGfYQkSbALD2MCZ01csOls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8346aed6d798a7ffa78937942221579a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Attempting to finish experiment","requestID":"8346aed6d798a7ffa78937942221579a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b8f2d530-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.226345,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8f2d530-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049576,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3Nn0.4UOrv7A0H34CR5fK5xCPPPGfYQkSbALD2MCZ01csOls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b8f2d530-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7590621c-c011-4cad-b1ec-9ab82e5b0f68","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/1c91cdc7-67f4-49d3-a38a-de35219679e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1c91cdc7-67f4-49d3-a38a-de35219679e4': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1c91cdc7-67f4-49d3-a38a-de35219679e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"1f4a3a4a-29fd-4665-a7f3-5f97feaf25ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049576.9914398} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9255808c6ba293e1c1421970f95551c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9255808c6ba293e1c1421970f95551c8","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c56d6b48-22cc-468c-9794-f39bd290a0af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049576.9929032} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c23e173d0144964d842d9510746af0b5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c23e173d0144964d842d9510746af0b5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"}}},"level":"info","message":"received a callback","requestID":"9255808c6ba293e1c1421970f95551c8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b8f2d530-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"}}},"level":"info","message":"received a callback","requestID":"c23e173d0144964d842d9510746af0b5"} device-1 | {"data":{"peerconnection":"1c91cdc7-67f4-49d3-a38a-de35219679e4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b8f2d530-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4 204 55ms","method":"DELETE","requestID":"b8f2d530-793e-11ef-9733-5750b05365a5","responseTime":55,"status":204,"url":"/peerconnections/1c91cdc7-67f4-49d3-a38a-de35219679e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"},"level":"info","message":"Successfully finished experiment","requestID":"8346aed6d798a7ffa78937942221579a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b8ffa670-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7590621c-c011-4cad-b1ec-9ab82e5b0f68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"551dc388-f5b6-409f-a181-51112e3145f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.0549242} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.866741,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8ffa670-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68","object_type":"device","rebac_allow":false,"scope_allow":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":"b8ffa670-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b8ffa670-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling 200 16ms","method":"POST","requestID":"b8ffa670-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/7590621c-c011-4cad-b1ec-9ab82e5b0f68/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2ce7951-82d5-4caa-821c-8467f578d5fc': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2ce7951-82d5-4caa-821c-8467f578d5fc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ce87ac09-b5e1-4b65-9084-bf63ad7f23d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.0648649} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6b1543b-cd48-44af-842e-bfd70d5e54f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.065274} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8346aed6d798a7ffa78937942221579a","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b902dac0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"409d31af-e663-457e-a5ac-96cecf7a0a58","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.075836} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.953881,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b902dac0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9","object_type":"device","rebac_allow":false,"scope_allow":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":"b902dac0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b902dac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling 200 16ms","method":"POST","requestID":"b902dac0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc","requestID":"8346aed6d798a7ffa78937942221579a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.201","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8346aed6d798a7ffa78937942221579a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:37 +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.689","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"274f618f0f4fc483f801583092deaaf2"} experiment-1 | {"level":"info","message":"DELETE /experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc 204 197ms","method":"DELETE","requestID":"8346aed6d798a7ffa78937942221579a","responseTime":197,"status":204,"url":"/experiments/a2ce7951-82d5-4caa-821c-8467f578d5fc"} gateway-1 | {"time_local":"22/Sep/2024:23:59:37 +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.722","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0aa8de463e48787d8bec48d5836fefa4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"9255808c6ba293e1c1421970f95551c8","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"9255808c6ba293e1c1421970f95551c8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"c23e173d0144964d842d9510746af0b5","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"c23e173d0144964d842d9510746af0b5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3N30.rccp3zehrRcNwjOO1iUdG36x3JttYJRDdvrGT4JX4yM","level":"info","message":"auth send jwt","requestID":"810531d14919e37e2e08d34642a9ea11"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"810531d14919e37e2e08d34642a9ea11","responseTime":5,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/43e263bd-7a89-4bfa-8c9b-f13dd4e4f1e9' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"810531d14919e37e2e08d34642a9ea11"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.081285,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"810531d14919e37e2e08d34642a9ea11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049577,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3N30.rccp3zehrRcNwjOO1iUdG36x3JttYJRDdvrGT4JX4yM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","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/7590621c-c011-4cad-b1ec-9ab82e5b0f68' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"686eeee5-a3f8-4d12-b7a5-3f1faaaca61f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.1795945} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"108eecfd-4b35-45d6-a5b8-df5f24a0f8c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.1881251} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6ce9856d-f1c5-4d28-b26b-7a6ff204319d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2011788} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a5fc917-69b5-411a-a172-276e93e1e65e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2014039} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"86fb641a-9c65-45da-a39c-aface154e662","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2078588} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"810531d14919e37e2e08d34642a9ea11"} gateway-1 | {"time_local":"22/Sep/2024:23:59:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"810531d14919e37e2e08d34642a9ea11"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"810531d14919e37e2e08d34642a9ea11","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3N30.rccp3zehrRcNwjOO1iUdG36x3JttYJRDdvrGT4JX4yM","level":"info","message":"auth send jwt","requestID":"d073bb003089b586c4be736bd92d0ed8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d073bb003089b586c4be736bd92d0ed8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d073bb003089b586c4be736bd92d0ed8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.998089,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d073bb003089b586c4be736bd92d0ed8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049577,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3N30.rccp3zehrRcNwjOO1iUdG36x3JttYJRDdvrGT4JX4yM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"11964e01-3945-4f43-9e2b-71cba4b2798e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.243063} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36e5ade6-f6b4-4c9a-83e3-e79888b9079a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2497072} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ab33d1ca-ed2f-4c82-ae8e-042ded863920","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2616527} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aea030b0-bd9c-4ff6-a00f-93b26a314a08","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2618134} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"b7878b50-b7ee-43a1-bcd1-7cc6349274c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049577.2664993} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d073bb003089b586c4be736bd92d0ed8"} gateway-1 | {"time_local":"22/Sep/2024:23:59:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d073bb003089b586c4be736bd92d0ed8"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"d073bb003089b586c4be736bd92d0ed8","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5208592a79fe674ee9a5893e71893e40","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5208592a79fe674ee9a5893e71893e40","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f71d58673d2a8d1e71c4b983067a8da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.008","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":"5208592a79fe674ee9a5893e71893e40"} device-1 | {"level":"info","message":"OPTIONS /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket 200 2ms","method":"OPTIONS","requestID":"5208592a79fe674ee9a5893e71893e40","responseTime":2,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4f71d58673d2a8d1e71c4b983067a8da","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/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":"4f71d58673d2a8d1e71c4b983067a8da"} device-1 | {"level":"info","message":"OPTIONS /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/websocket 200 1ms","method":"OPTIONS","requestID":"4f71d58673d2a8d1e71c4b983067a8da","responseTime":1,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"e6fac36b1d2550d426789b9672932d9a"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"e6fac36b1d2550d426789b9672932d9a","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"8ac413d3ab20a47452dbe4d34b35f596"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8ac413d3ab20a47452dbe4d34b35f596","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e6fac36b1d2550d426789b9672932d9a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8ac413d3ab20a47452dbe4d34b35f596"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265903,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e6fac36b1d2550d426789b9672932d9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e6fac36b1d2550d426789b9672932d9a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.065766,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8ac413d3ab20a47452dbe4d34b35f596","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"8ac413d3ab20a47452dbe4d34b35f596","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e6fac36b1d2550d426789b9672932d9a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.063","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":"e6fac36b1d2550d426789b9672932d9a"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket 200 53ms","method":"POST","requestID":"e6fac36b1d2550d426789b9672932d9a","responseTime":53,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8ac413d3ab20a47452dbe4d34b35f596"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.068","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":"8ac413d3ab20a47452dbe4d34b35f596"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/websocket 200 57ms","method":"POST","requestID":"8ac413d3ab20a47452dbe4d34b35f596","responseTime":57,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2095d0f581cf6f4bd8ac61b5edce7053","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2095d0f581cf6f4bd8ac61b5edce7053","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"2095d0f581cf6f4bd8ac61b5edce7053"} device-1 | {"level":"info","message":"OPTIONS /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 1ms","method":"OPTIONS","requestID":"2095d0f581cf6f4bd8ac61b5edce7053","responseTime":1,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"ea7c92e21ec7b06709ea56a74aee7479"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea7c92e21ec7b06709ea56a74aee7479","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c2f5c86014e7eb310276660438ef240","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"patchDevicesByDeviceId called","requestID":"ea7c92e21ec7b06709ea56a74aee7479"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c2f5c86014e7eb310276660438ef240","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"6c2f5c86014e7eb310276660438ef240"} device-1 | {"level":"info","message":"OPTIONS /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 1ms","method":"OPTIONS","requestID":"6c2f5c86014e7eb310276660438ef240","responseTime":1,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895565,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ea7c92e21ec7b06709ea56a74aee7479","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ea7c92e21ec7b06709ea56a74aee7479","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"dd3a85e06dbc669c3f6b25c8af952489"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd3a85e06dbc669c3f6b25c8af952489","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dd3a85e06dbc669c3f6b25c8af952489"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"fd4549f9-c386-40b3-8b55-70c7ce439c5b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.37668} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ea7c92e21ec7b06709ea56a74aee7479","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767462,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dd3a85e06dbc669c3f6b25c8af952489","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd3a85e06dbc669c3f6b25c8af952489","responseTime":5,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bf78fc7-f482-4771-b7f3-3d82e19e1616","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.3849514} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ea7c92e21ec7b06709ea56a74aee7479","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"9dbeccce-33a7-4d89-bd73-6368dc35c1e7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.3899949} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd3a85e06dbc669c3f6b25c8af952489","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dcd96ee-0e29-4fe1-b836-648e08aa664c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.3965147} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dd3a85e06dbc669c3f6b25c8af952489","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"e14aca53-3680-4198-9cf0-0f715dc4527e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.400541} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea7c92e21ec7b06709ea56a74aee7479","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ea7c92e21ec7b06709ea56a74aee7479"} device-1 | {"level":"info","message":"PATCH /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 41ms","method":"PATCH","requestID":"ea7c92e21ec7b06709ea56a74aee7479","responseTime":41,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.048","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":"ea7c92e21ec7b06709ea56a74aee7479"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"77eb301a-c236-4cc3-8f23-5cb94ff06c65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.4158192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd3a85e06dbc669c3f6b25c8af952489","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dd3a85e06dbc669c3f6b25c8af952489"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.052","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":"dd3a85e06dbc669c3f6b25c8af952489"} device-1 | {"level":"info","message":"PATCH /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 45ms","method":"PATCH","requestID":"dd3a85e06dbc669c3f6b25c8af952489","responseTime":45,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"5fa96062136c404e5e8f0e493440c619"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5fa96062136c404e5e8f0e493440c619","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5fa96062136c404e5e8f0e493440c619"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7023,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5fa96062136c404e5e8f0e493440c619","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5fa96062136c404e5e8f0e493440c619","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"03fccccc-08cb-43ec-be95-62d6303afd3a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.4415631} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fa96062136c404e5e8f0e493440c619","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5fa96062136c404e5e8f0e493440c619"} device-1 | {"level":"info","message":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 14ms","method":"GET","requestID":"5fa96062136c404e5e8f0e493440c619","responseTime":14,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5fa96062136c404e5e8f0e493440c619"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"f4a3616bd263d044f8d1a48f1988d33a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4a3616bd263d044f8d1a48f1988d33a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4a3616bd263d044f8d1a48f1988d33a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.867316,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4a3616bd263d044f8d1a48f1988d33a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4a3616bd263d044f8d1a48f1988d33a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"aa36b6bd-2263-44c2-964a-5d65e4b5a804","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.4650111} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4a3616bd263d044f8d1a48f1988d33a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4a3616bd263d044f8d1a48f1988d33a"} device-1 | {"level":"info","message":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 16ms","method":"GET","requestID":"f4a3616bd263d044f8d1a48f1988d33a","responseTime":16,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4a3616bd263d044f8d1a48f1988d33a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"826569e696db035d2f0a17fd4a14ff2a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"826569e696db035d2f0a17fd4a14ff2a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"826569e696db035d2f0a17fd4a14ff2a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.280843,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"826569e696db035d2f0a17fd4a14ff2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"826569e696db035d2f0a17fd4a14ff2a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to run experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to book experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully booked experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba7a1170-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761737,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba7a1170-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba7a1170-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799681,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"94a5b69d-6b07-4cf4-84e6-93b98c828fd6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.5409932} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ba7a1170-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"910b1357-828c-437c-927a-dd225ac07478","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.5426192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba7a1170-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 21ms","method":"GET","requestID":"ba7a1170-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 20ms","method":"GET","requestID":"ba7a5f90-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Setting up experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully locked booking for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to update booking for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully updated booking for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully set up experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba85d140-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba861f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba866d80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065529,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba85d140-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully running experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ba85d140-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313894,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba861f60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ba861f60-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"ffd6975e-159d-42c2-b568-c5cd914a78b7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.621541} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ba861f60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"a9c4faa3-df62-45d3-895d-f4e486094d65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.62353} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"492c8400-a0b1-4e5b-8ec4-c1e0aa8d939a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6240175} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ba85d140-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.191997,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba866d80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","rebac_allow":false,"scope_allow":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":"ba866d80-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba861f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 30ms","method":"GET","requestID":"ba861f60-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5631644-521c-40e8-84bb-844ca8f02432#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5631644-521c-40e8-84bb-844ca8f02432","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"721e1e37-b95b-4627-9be2-f0d915264179","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6360946} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba85d140-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7527c84e-7e54-48c1-b7af-6d0d34d109a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6367638} device-1 | {"level":"info","message":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 34ms","method":"GET","requestID":"ba85d140-793e-11ef-9733-5750b05365a5","responseTime":34,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba866d80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling 200 31ms","method":"POST","requestID":"ba866d80-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"826569e696db035d2f0a17fd4a14ff2a","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8b7690-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8bebc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"937dc854-82d4-4d3d-8869-d8beb1efab62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6476638} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.156348,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba8b7690-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8b7690-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f3c62c7-cb1e-49a9-9453-72fd6aa52f2d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.64989} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82965,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"826569e696db035d2f0a17fd4a14ff2a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba8bebc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8bebc0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"826569e696db035d2f0a17fd4a14ff2a","responseTime":174,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8b7690-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling 200 14ms","method":"POST","requestID":"ba8b7690-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8bebc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling 200 14ms","method":"POST","requestID":"ba8bebc0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"11a410628ef963a5068e21893770360d"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"11a410628ef963a5068e21893770360d","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11a410628ef963a5068e21893770360d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8f2010-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885802,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11a410628ef963a5068e21893770360d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11a410628ef963a5068e21893770360d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01483186-0d1c-4488-aeba-b9dcce89a90e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6713426} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.149386,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba8f2010-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8f2010-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"cd3e747d-0d75-4c53-942d-ac2f7e2fe9d2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6737487} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11a410628ef963a5068e21893770360d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11a410628ef963a5068e21893770360d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11a410628ef963a5068e21893770360d"} device-1 | {"level":"info","message":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 17ms","method":"GET","requestID":"11a410628ef963a5068e21893770360d","responseTime":17,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8f2010-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling 200 14ms","method":"POST","requestID":"ba8f2010-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba91b820-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba91df30-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"260ae707e2e4a4aa31e32650d594b9ef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"260ae707e2e4a4aa31e32650d594b9ef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"260ae707e2e4a4aa31e32650d594b9ef"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.616776,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba91b820-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ba91b820-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864297,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.497136,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba91df30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba91df30-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"260ae707e2e4a4aa31e32650d594b9ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"260ae707e2e4a4aa31e32650d594b9ef","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.201163148Z"}]},"request_id":"4210718f-99b6-42fa-9581-23e4c127134a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6930535} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"9c2799a3-b7ae-4549-87e0-ec36bc12789f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6939425} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba91b820-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba91df30-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:37.261637577Z"}]},"request_id":"e1f1ab3e-58e1-48a8-bc4e-42f8af8d3a2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.6972766} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"260ae707e2e4a4aa31e32650d594b9ef","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba91df30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 19ms","method":"GET","requestID":"ba91df30-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba91b820-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a435104b-40dc-41cf-8f72-fa9b22a50675? 200 20ms","method":"GET","requestID":"ba91b820-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"260ae707e2e4a4aa31e32650d594b9ef"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"260ae707e2e4a4aa31e32650d594b9ef"} device-1 | {"level":"info","message":"GET /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8? 200 18ms","method":"GET","requestID":"260ae707e2e4a4aa31e32650d594b9ef","responseTime":18,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Building connection plan","requestID":"826569e696db035d2f0a17fd4a14ff2a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"7cdb5e76-ceee-4901-9fed-aed04cf5afe2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"c834b23a-98ae-4959-be04-39b6e82d6e87"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"01b52718-617f-4e2b-b114-ccb8016c9fbd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"826569e696db035d2f0a17fd4a14ff2a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ba973660-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ba973660-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 10ms","method":"POST","requestID":"ba973660-793e-11ef-a51e-0dff660adfff","responseTime":11,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700?id=d9cc28c2-65a1-4e74-99aa-876953fa6afd","ws://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700?id=8af4eba9-48bf-4c93-9474-f6aba21a48b5"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.793934,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba998050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba998050-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"4dad1095-05d3-4a28-a031-f636831d1992","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.754115} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8be303b2-8dd3-42a1-88f1-5e9aa026dc93","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.754627} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"ba998050-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b'","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b'","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"ba998050-793e-11ef-9733-5750b05365a5","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ba998050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"420efa0f91a6d1a94e855c149e5cfb19","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"420efa0f91a6d1a94e855c149e5cfb19","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"baa28100-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8af4eba9-48bf-4c93-9474-f6aba21a48b5\" in room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\"","requestID":"baa28100-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"baa28100-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"baa31d40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d9cc28c2-65a1-4e74-99aa-876953fa6afd\" in room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\"","requestID":"baa31d40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"baa31d40-793e-11ef-a51e-0dff660adfff"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"}}},"level":"info","message":"received a callback","requestID":"420efa0f91a6d1a94e855c149e5cfb19"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"420efa0f91a6d1a94e855c149e5cfb19","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"420efa0f91a6d1a94e855c149e5cfb19"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"826569e696db035d2f0a17fd4a14ff2a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baa714e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5bf971a2788cc27800eff2da6e6667ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43158b55-6873-427c-a9ba-34b10534755c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.8279517} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5bf971a2788cc27800eff2da6e6667ae","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.927856,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"baa714e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","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":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"}}},"level":"info","message":"received a callback","requestID":"5bf971a2788cc27800eff2da6e6667ae"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"baa714e0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"baa910b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baa714e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling 200 17ms","method":"POST","requestID":"baa714e0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F532b38c4-4db5-49e4-b210-7c139704f92b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fb3cfab-39d3-4616-9b8b-33a98f7fc57d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.8411162} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.409938,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baaa2220-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"baa910b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","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":"baa910b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"baa910b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b 200 10ms","method":"GET","requestID":"baa910b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2ddb817-ad57-4a42-98ef-04dfc7a9d0e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.8469882} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.854008,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"baaa2220-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","rebac_allow":false,"scope_allow":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":"baaa2220-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baaa2220-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling 200 11ms","method":"POST","requestID":"baaa2220-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"5bf971a2788cc27800eff2da6e6667ae","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"5bf971a2788cc27800eff2da6e6667ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baada490-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b5ed254-6495-4c8d-b46f-5670d8045f20","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.870649} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.463403,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"baada490-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baada490-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baada490-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling 200 10ms","method":"POST","requestID":"baada490-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baaf7950-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82eb359b-6362-49f8-b3b3-ba5a4af05290","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.8824878} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422854,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"baaf7950-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baaf7950-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baaf7950-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling 200 10ms","method":"POST","requestID":"baaf7950-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"d366334271de932db5c628d5d178e440"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d366334271de932db5c628d5d178e440","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a5631644-521c-40e8-84bb-844ca8f02432","requestID":"d366334271de932db5c628d5d178e440"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.818438,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d366334271de932db5c628d5d178e440","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d366334271de932db5c628d5d178e440","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a5631644-521c-40e8-84bb-844ca8f02432","requestID":"d366334271de932db5c628d5d178e440"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a5631644-521c-40e8-84bb-844ca8f02432 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d366334271de932db5c628d5d178e440"} experiment-1 | {"level":"info","message":"GET /experiments/a5631644-521c-40e8-84bb-844ca8f02432 200 10ms","method":"GET","requestID":"d366334271de932db5c628d5d178e440","responseTime":10,"status":200,"url":"/experiments/a5631644-521c-40e8-84bb-844ca8f02432"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA","level":"info","message":"auth send jwt","requestID":"8c50b349ffae632c0b00abf401ed9804"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8c50b349ffae632c0b00abf401ed9804","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a5631644-521c-40e8-84bb-844ca8f02432","requestID":"8c50b349ffae632c0b00abf401ed9804"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.119419,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8c50b349ffae632c0b00abf401ed9804","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8c50b349ffae632c0b00abf401ed9804","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Attempting to finish experiment","requestID":"8c50b349ffae632c0b00abf401ed9804"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bab91640-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.124864,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bab91640-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049579,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU3OX0.EphjN2a_NEvFVm3LP4YzrcwmP9bXH3KniQ6hEyjoBmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bab91640-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","device":"a435104b-40dc-41cf-8f72-fa9b22a50675","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b","device":"2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","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/532b38c4-4db5-49e4-b210-7c139704f92b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700?id=8af4eba9-48bf-4c93-9474-f6aba21a48b5 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.178","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":"5da480ba79a29d4145f2291f62a89ac2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700?id=d9cc28c2-65a1-4e74-99aa-876953fa6afd HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.181","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":"ae4f6750bdf03d348a9bcc5ab49bf7f7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fddb1db182b1e8e0186d0375444f2e24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fddb1db182b1e8e0186d0375444f2e24","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8af4eba9-48bf-4c93-9474-f6aba21a48b5\" in room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8af4eba9-48bf-4c93-9474-f6aba21a48b5\" from room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5bc26c255ab4d0116741c89bb988c85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"}}},"level":"info","message":"received a callback","requestID":"fddb1db182b1e8e0186d0375444f2e24"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b5bc26c255ab4d0116741c89bb988c85","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d9cc28c2-65a1-4e74-99aa-876953fa6afd\" in room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d9cc28c2-65a1-4e74-99aa-876953fa6afd\" from room \"http://localhost/rooms/f9f1131f-69ae-49ef-98cf-5165ab01c700\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F532b38c4-4db5-49e4-b210-7c139704f92b': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F532b38c4-4db5-49e4-b210-7c139704f92b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"8754801b-f3b4-46a2-bbb0-32dfa8c82693","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.970053} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"}}},"level":"info","message":"received a callback","requestID":"b5bc26c255ab4d0116741c89bb988c85"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5437661-a8a2-4487-a025-d0e41fe8a148","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049579.9708993} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"bab91640-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"532b38c4-4db5-49e4-b210-7c139704f92b","statusDeviceA":"closed","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/a435104b-40dc-41cf-8f72-fa9b22a50675'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bab91640-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b 204 51ms","method":"DELETE","requestID":"bab91640-793e-11ef-9733-5750b05365a5","responseTime":51,"status":204,"url":"/peerconnections/532b38c4-4db5-49e4-b210-7c139704f92b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5631644-521c-40e8-84bb-844ca8f02432"},"level":"info","message":"Successfully finished experiment","requestID":"8c50b349ffae632c0b00abf401ed9804"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bac4fd20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae90725b-dab4-40cb-825b-8abd954e2461","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.0274734} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.49133,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bac4fd20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8","object_type":"device","rebac_allow":false,"scope_allow":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":"bac4fd20-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bac4fd20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling 200 17ms","method":"POST","requestID":"bac4fd20-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5631644-521c-40e8-84bb-844ca8f02432': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5631644-521c-40e8-84bb-844ca8f02432","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"8bc97315-091d-43c2-a892-45c6a16db7c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.0357096} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4f38d7b-b812-48d0-9933-b5bf698cceef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.0361469} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8c50b349ffae632c0b00abf401ed9804","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bac7e350-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa435104b-40dc-41cf-8f72-fa9b22a50675","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c85c1a48-acf5-409e-8f42-1bbb2f78ff0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.0447345} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.768913,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bac7e350-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675","object_type":"device","rebac_allow":false,"scope_allow":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":"bac7e350-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bac7e350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling 200 14ms","method":"POST","requestID":"bac7e350-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a435104b-40dc-41cf-8f72-fa9b22a50675/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a5631644-521c-40e8-84bb-844ca8f02432","requestID":"8c50b349ffae632c0b00abf401ed9804"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a5631644-521c-40e8-84bb-844ca8f02432 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c50b349ffae632c0b00abf401ed9804"} experiment-1 | {"level":"info","message":"DELETE /experiments/a5631644-521c-40e8-84bb-844ca8f02432 204 184ms","method":"DELETE","requestID":"8c50b349ffae632c0b00abf401ed9804","responseTime":184,"status":204,"url":"/experiments/a5631644-521c-40e8-84bb-844ca8f02432"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"fddb1db182b1e8e0186d0375444f2e24","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"fddb1db182b1e8e0186d0375444f2e24"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"b5bc26c255ab4d0116741c89bb988c85","responseTime":146,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI","level":"info","message":"auth send jwt","requestID":"9a7c9f445fe192656c50fe03333e650c"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"b5bc26c255ab4d0116741c89bb988c85"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a7c9f445fe192656c50fe03333e650c"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"0.800","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":"17b538848dd5a28b688862cc096951b6"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"0.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":"d0c684a129d9642c6c04d247a3e5417a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.972779,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9a7c9f445fe192656c50fe03333e650c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049580,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","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/2c880d9d-6d9b-45fc-bd69-bb4c2f8aa9e8' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a435104b-40dc-41cf-8f72-fa9b22a50675' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5bc977f3-2f6e-417b-a8c1-e5e74fe842be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.1409142} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9497daf3-1458-48bd-892d-3735a58308bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.1461732} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2539893b-7872-4bc6-a1b5-41f1da177015","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.156936} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd211dfe-5707-4c40-b74b-3a4118cdc366","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.1570866} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"ab037da4-babe-4576-81a5-efe4770384ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.1614947} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a7c9f445fe192656c50fe03333e650c"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a7c9f445fe192656c50fe03333e650c"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"9a7c9f445fe192656c50fe03333e650c","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI","level":"info","message":"auth send jwt","requestID":"48590d2fdb015bd463255578eb781cb6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"48590d2fdb015bd463255578eb781cb6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"48590d2fdb015bd463255578eb781cb6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.666808,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"48590d2fdb015bd463255578eb781cb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049580,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"be20bd95-93c2-4929-8b8b-070ab23168f3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.1863933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f319e034-59db-46e7-b448-93c945308d2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.191476} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e7f609b3-d670-4304-a91e-7b2d40a2eebe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.2004094} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bddd1055-f9dd-4a21-a08a-0ba34092dd08","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.200542} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"d7f8ec32-4397-453b-8d1b-b32b8bc50aad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.2045841} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48590d2fdb015bd463255578eb781cb6"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48590d2fdb015bd463255578eb781cb6"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"48590d2fdb015bd463255578eb781cb6","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI","level":"info","message":"auth send jwt","requestID":"3a109b01f7333b8e070a025dc4fd4116"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a109b01f7333b8e070a025dc4fd4116","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3a109b01f7333b8e070a025dc4fd4116"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232451,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3a109b01f7333b8e070a025dc4fd4116","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049580,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a109b01f7333b8e070a025dc4fd4116","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"79513a49-9ffb-4653-8b2b-bd232e3f8cc0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.6988523} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a109b01f7333b8e070a025dc4fd4116","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8c55d7a-af4f-4258-a2d2-86859b0f0240","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.7064974} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3a109b01f7333b8e070a025dc4fd4116","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"fba6efc6-984c-4cdd-9ea0-b72c23a412e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049580.7206008} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a109b01f7333b8e070a025dc4fd4116","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3a109b01f7333b8e070a025dc4fd4116"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b7c64709-e19a-48dc-bb6d-553277b497a6 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3a109b01f7333b8e070a025dc4fd4116"} device-1 | {"level":"info","message":"PATCH /devices/b7c64709-e19a-48dc-bb6d-553277b497a6 200 41ms","method":"PATCH","requestID":"3a109b01f7333b8e070a025dc4fd4116","responseTime":41,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI","level":"info","message":"auth send jwt","requestID":"a596a95ec678b41fa7d681a56bc7ce3b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a596a95ec678b41fa7d681a56bc7ce3b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a596a95ec678b41fa7d681a56bc7ce3b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144423,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a596a95ec678b41fa7d681a56bc7ce3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049580,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4MH0.Fp6uwIfzGHGU883pOhkWcacAiqDEu8-zwH8skbVP1TI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a596a95ec678b41fa7d681a56bc7ce3b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a596a95ec678b41fa7d681a56bc7ce3b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a596a95ec678b41fa7d681a56bc7ce3b"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/websocket 200 23ms","method":"POST","requestID":"a596a95ec678b41fa7d681a56bc7ce3b","responseTime":23,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a05b676e9f07c4ff591aebff278c20e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7a05b676e9f07c4ff591aebff278c20e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/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":"7a05b676e9f07c4ff591aebff278c20e"} device-1 | {"level":"info","message":"OPTIONS /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/websocket 200 1ms","method":"OPTIONS","requestID":"7a05b676e9f07c4ff591aebff278c20e","responseTime":1,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA","level":"info","message":"auth send jwt","requestID":"6a66f258bf95a0deaa7c5ba087703c97"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6a66f258bf95a0deaa7c5ba087703c97","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6a66f258bf95a0deaa7c5ba087703c97"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.380524,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6a66f258bf95a0deaa7c5ba087703c97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6a66f258bf95a0deaa7c5ba087703c97","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6a66f258bf95a0deaa7c5ba087703c97"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/websocket 200 25ms","method":"POST","requestID":"6a66f258bf95a0deaa7c5ba087703c97","responseTime":25,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/websocket"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"6a66f258bf95a0deaa7c5ba087703c97"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"72a0d15ade8d2b180ee2974f84bd66fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"72a0d15ade8d2b180ee2974f84bd66fb","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"72a0d15ade8d2b180ee2974f84bd66fb"} device-1 | {"level":"info","message":"OPTIONS /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 2ms","method":"OPTIONS","requestID":"72a0d15ade8d2b180ee2974f84bd66fb","responseTime":2,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA","level":"info","message":"auth send jwt","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233886,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"f732684f-e7f6-4d44-85cd-4f0e363c8c2d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.348424} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f44ab7f2-17f4-4c63-9619-1b159e8487f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.3565133} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"32a33ae9-4a76-4194-b84d-368e0ab9e685","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.3683717} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994"} device-1 | {"level":"info","message":"PATCH /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 39ms","method":"PATCH","requestID":"c7eafd8c2ea45dab53b5b7b60ce9d994","responseTime":39,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","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":"c7eafd8c2ea45dab53b5b7b60ce9d994"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA","level":"info","message":"auth send jwt","requestID":"e987e37b605f987575bc97704a6b491d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e987e37b605f987575bc97704a6b491d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e987e37b605f987575bc97704a6b491d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.306261,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e987e37b605f987575bc97704a6b491d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e987e37b605f987575bc97704a6b491d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"f8e45541-99f1-4e3b-8449-6e6cfb7c3d9e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.3994265} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e987e37b605f987575bc97704a6b491d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e987e37b605f987575bc97704a6b491d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e987e37b605f987575bc97704a6b491d"} device-1 | {"level":"info","message":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 20ms","method":"GET","requestID":"e987e37b605f987575bc97704a6b491d","responseTime":20,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA","level":"info","message":"auth send jwt","requestID":"7ea12e9b680a355b4c24699ee2b24fb1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ea12e9b680a355b4c24699ee2b24fb1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ea12e9b680a355b4c24699ee2b24fb1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163662,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7ea12e9b680a355b4c24699ee2b24fb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ea12e9b680a355b4c24699ee2b24fb1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"d11620fb-4dea-4d4e-b1ea-cc9696372df0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.4262922} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7ea12e9b680a355b4c24699ee2b24fb1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ea12e9b680a355b4c24699ee2b24fb1"} gateway-1 | {"time_local":"22/Sep/2024:23:59:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ea12e9b680a355b4c24699ee2b24fb1"} device-1 | {"level":"info","message":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? 200 19ms","method":"GET","requestID":"7ea12e9b680a355b4c24699ee2b24fb1","responseTime":19,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA","level":"info","message":"auth send jwt","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae19699d4e90d18a9f5af1a42f4ae953","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.300575,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ae19699d4e90d18a9f5af1a42f4ae953","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae19699d4e90d18a9f5af1a42f4ae953","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to run experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to book experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully booked experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.487805,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946055,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"ba4c4318-c2f5-4a49-bd74-42714b6bda2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.5105953} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"c1e36f73-1166-4008-9486-8afe4e2d7759","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.512348} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 28ms","method":"GET","requestID":"bc3ea4d0-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? 200 27ms","method":"GET","requestID":"bc3ef2f0-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Setting up experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully set up experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc8830f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc887f10-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully running experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.81686,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.965889,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc8830f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"bc8830f0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58744","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.524363,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c86a9d6d-42a4-43c9-9112-f497e9dd89f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049582.9937334} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc887f10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","rebac_allow":false,"scope_allow":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":"bc887f10-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc887f10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling 200 30ms","method":"POST","requestID":"bc887f10-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"b0ff798b-f894-49d5-b1bb-3e1e0125ae07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.005418} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bc8830f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"4da12bbb-fa4f-4511-ba01-fa2097313ed8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.0093255} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc8e2460-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ceef5b58-8699-4b8e-92a6-81a0cedcd54b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.02374} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.84071,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc8e2460-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","rebac_allow":false,"scope_allow":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":"bc8e2460-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc8830f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? 200 55ms","method":"GET","requestID":"bc8830f0-793e-11ef-9733-5750b05365a5","responseTime":55,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 58ms","method":"GET","requestID":"bc87bbc0-793e-11ef-9733-5750b05365a5","responseTime":58,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc8e2460-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling 200 18ms","method":"POST","requestID":"bc8e2460-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc90e380-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"467ccbac-d0a5-44af-8eb8-d444309aa0c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.0379622} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.974857,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc90e380-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bc90e380-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc90e380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling 200 12ms","method":"POST","requestID":"bc90e380-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc930660-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73f681f9-3a0d-4162-9e96-6036721c8490","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.0532167} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.671789,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc930660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","rebac_allow":false,"scope_allow":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":"bc930660-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc930660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling 200 13ms","method":"POST","requestID":"bc930660-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc955050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc959e70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc955050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617565,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc955050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bc955050-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586275,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc959e70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bc959e70-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"b3ebcb8d-1b75-4ea6-bffd-4f779aadd676","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.0697188} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bc955050-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"5644fd47-9a76-4bd6-a2f5-c5e048b75c66","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.070457} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bc959e70-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 16ms","method":"GET","requestID":"bc955050-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc959e70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? 200 15ms","method":"GET","requestID":"bc959e70-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Building connection plan","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"9826726c-3bd4-46fa-abf3-a6050b8a4c31"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"59f3f8b7-0010-4c6f-b2fd-cfe86adbd024"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b76bf7cf-5515-46fd-b019-98b0e844e681"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"bc98d2c0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"bc98d2c0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 7ms","method":"POST","requestID":"bc98d2c0-793e-11ef-a51e-0dff660adfff","responseTime":7,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9?id=7869b450-f62c-4873-a135-78ef06e16ca6","ws://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9?id=0c850243-1374-4ef3-9d35-594cbba46224"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.144366,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bc9aa780-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049582,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Mn0.IYD847mW01DSvhTtC0RWGdnMqzfQ1AdYtgymMrYPCjA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1f9b0225-b118-4659-98e5-995e93334e77#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1f9b0225-b118-4659-98e5-995e93334e77","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3cf1c3f1-bda4-4915-962d-8520ea61639d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.183978} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6f46c95-bf41-4f5f-8593-8a81519742de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.185142} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"56e760f3-da7b-4122-96ce-598dde40c7cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.1872919} authorization-1 | {"level":"info","message":"POST /relations/update 200 205ms","method":"POST","requestID":"ae19699d4e90d18a9f5af1a42f4ae953","responseTime":205,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9692f142-28a8-4890-a033-78e471add213","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.1963804} authorization-1 | {"level":"info","message":"POST /relations/update 200 87ms","method":"POST","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5","responseTime":87,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} experiment-1 | {"level":"info","message":"POST /experiments? 201 765ms","method":"POST","requestID":"ae19699d4e90d18a9f5af1a42f4ae953","responseTime":765,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.772","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY","level":"info","message":"auth send jwt","requestID":"5712954d1a94d33acba9763f69f80d74"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5712954d1a94d33acba9763f69f80d74","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5712954d1a94d33acba9763f69f80d74"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.259337,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5712954d1a94d33acba9763f69f80d74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049583,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5712954d1a94d33acba9763f69f80d74","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.156923637Z"}]},"request_id":"6381b075-b6ec-4255-a41e-e73f278e4f64","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.2296515} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5712954d1a94d33acba9763f69f80d74","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3'","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3'","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 242ms","method":"POST","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5","responseTime":242,"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":"5712954d1a94d33acba9763f69f80d74"} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5712954d1a94d33acba9763f69f80d74"} device-1 | {"level":"info","message":"GET /devices/dda7a422-20f7-43e7-a1bc-699acc76e487? 200 122ms","method":"GET","requestID":"5712954d1a94d33acba9763f69f80d74","responseTime":122,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bc9aa780-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY","level":"info","message":"auth send jwt","requestID":"14eab9573175fe0117922c3af54e6031"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"14eab9573175fe0117922c3af54e6031","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14eab9573175fe0117922c3af54e6031"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.954304,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14eab9573175fe0117922c3af54e6031","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049583,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14eab9573175fe0117922c3af54e6031","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bcc3b350-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0c850243-1374-4ef3-9d35-594cbba46224\" in room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\"","requestID":"bcc3b350-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bcc3b350-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdc607ce7a40f8e00299134d6c484180","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cdc607ce7a40f8e00299134d6c484180","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bcc42880-793e-11ef-a51e-0dff660adfff"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"}}},"level":"info","message":"received a callback","requestID":"cdc607ce7a40f8e00299134d6c484180"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7869b450-f62c-4873-a135-78ef06e16ca6\" in room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\"","requestID":"bcc42880-793e-11ef-a51e-0dff660adfff"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:40.200391546Z"}]},"request_id":"77da8bc1-70b0-44f6-bd77-0f6778e8c959","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.3703074} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bcc42880-793e-11ef-a51e-0dff660adfff"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"14eab9573175fe0117922c3af54e6031","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 250ms","method":"POST","requestID":"cdc607ce7a40f8e00299134d6c484180","responseTime":250,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +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.255","http_referrer":"","http_user_agent":"node-fetch","requestID":"cdc607ce7a40f8e00299134d6c484180"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14eab9573175fe0117922c3af54e6031"} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.378","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14eab9573175fe0117922c3af54e6031"} device-1 | {"level":"info","message":"GET /devices/b7c64709-e19a-48dc-bb6d-553277b497a6? 200 367ms","method":"GET","requestID":"14eab9573175fe0117922c3af54e6031","responseTime":367,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6?"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ae19699d4e90d18a9f5af1a42f4ae953"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd03a280-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e251270a-c21d-4a33-9950-d386a5fabb38","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.7917762} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.061346,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd03a280-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","rebac_allow":false,"scope_allow":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":"bd03a280-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY","level":"info","message":"auth send jwt","requestID":"6d41d8aa08be19554ad5a6125b621039"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6d41d8aa08be19554ad5a6125b621039","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"6d41d8aa08be19554ad5a6125b621039"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.410485,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6d41d8aa08be19554ad5a6125b621039","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049583,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd03a280-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d41d8aa08be19554ad5a6125b621039","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling 200 56ms","method":"POST","requestID":"bd03a280-793e-11ef-9733-5750b05365a5","responseTime":56,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd0d8d90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"6d41d8aa08be19554ad5a6125b621039"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecc2a3f1-0206-4f6e-9574-3c440223e69e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049583.8583438} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d41d8aa08be19554ad5a6125b621039"} experiment-1 | {"level":"info","message":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 200 28ms","method":"GET","requestID":"6d41d8aa08be19554ad5a6125b621039","responseTime":28,"status":200,"url":"/experiments/1f9b0225-b118-4659-98e5-995e93334e77"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.728407,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd0d8d90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","rebac_allow":false,"scope_allow":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":"bd0d8d90-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY","level":"info","message":"auth send jwt","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.561039,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"edbf2e4b66a11bef92c455b3a22d6c9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049583,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4M30.L3jwXOgtd7vRzzMVAzCbWn16q5A6JLXrNMyajVTKfoY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b"} experiment-1 | {"level":"info","message":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 200 21ms","method":"GET","requestID":"edbf2e4b66a11bef92c455b3a22d6c9b","responseTime":21,"status":200,"url":"/experiments/1f9b0225-b118-4659-98e5-995e93334e77"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd0d8d90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling 200 145ms","method":"POST","requestID":"bd0d8d90-793e-11ef-9733-5750b05365a5","responseTime":145,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3147674e4a5043e97bc600241df9671e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3147674e4a5043e97bc600241df9671e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"}}},"level":"info","message":"received a callback","requestID":"3147674e4a5043e97bc600241df9671e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bd25a970-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F98250fac-72ec-430f-a739-edee24bce3b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9175749-683c-45f1-8911-0fb97e423d88","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.015811} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.07175,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd25a970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3","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":"bd25a970-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI","level":"info","message":"auth send jwt","requestID":"5e71cb24ed72746df80489339263f3fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5e71cb24ed72746df80489339263f3fa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"5e71cb24ed72746df80489339263f3fa"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.047637,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5e71cb24ed72746df80489339263f3fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049584,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e71cb24ed72746df80489339263f3fa","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"5e71cb24ed72746df80489339263f3fa"} gateway-1 | {"time_local":"22/Sep/2024:23:59:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e71cb24ed72746df80489339263f3fa"} experiment-1 | {"level":"info","message":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 200 18ms","method":"GET","requestID":"5e71cb24ed72746df80489339263f3fa","responseTime":18,"status":200,"url":"/experiments/1f9b0225-b118-4659-98e5-995e93334e77"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bd25a970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/98250fac-72ec-430f-a739-edee24bce3b3 200 136ms","method":"GET","requestID":"bd25a970-793e-11ef-9733-5750b05365a5","responseTime":136,"status":200,"url":"/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI","level":"info","message":"auth send jwt","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.264861,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049584,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 289ms","method":"POST","requestID":"3147674e4a5043e97bc600241df9671e","responseTime":289,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.295","http_referrer":"","http_user_agent":"node-fetch","requestID":"3147674e4a5043e97bc600241df9671e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd508a00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1"} gateway-1 | {"time_local":"22/Sep/2024:23:59:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.074","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1"} experiment-1 | {"level":"info","message":"GET /experiments/1f9b0225-b118-4659-98e5-995e93334e77 200 66ms","method":"GET","requestID":"3dd4a5fd61e07bfe6bfb602e005ec8d1","responseTime":66,"status":200,"url":"/experiments/1f9b0225-b118-4659-98e5-995e93334e77"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2eab88a8-a825-4f58-9e32-af9a052ff62d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.2973545} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.174925,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd508a00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","rebac_allow":false,"scope_allow":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":"bd508a00-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI","level":"info","message":"auth send jwt","requestID":"9d2ae61501a10af658aca477919fd162"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9d2ae61501a10af658aca477919fd162","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd508a00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling 200 17ms","method":"POST","requestID":"bd508a00-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd53e560-793e-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"9d2ae61501a10af658aca477919fd162"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa5cc6c0-6d46-4502-8276-052a89afeaf1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.3186038} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.797913,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9d2ae61501a10af658aca477919fd162","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049584,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9d2ae61501a10af658aca477919fd162","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.814646,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd53e560-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","rebac_allow":false,"scope_allow":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":"bd53e560-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd53e560-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling 200 19ms","method":"POST","requestID":"bd53e560-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Attempting to finish experiment","requestID":"9d2ae61501a10af658aca477919fd162"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.083435,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049584,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NH0.Xes-kijYywi-P5h0QdsOlW5D08-VFASdzpUcZyFOeTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"22/Sep/2024:23:59:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f69cf64d-a57d-4198-8531-acb94230bee9?id=0c850243-1374-4ef3-9d35-594cbba46224 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.991","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"54c7fa530b00b1efa2ba8244bd790601"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0c850243-1374-4ef3-9d35-594cbba46224\" in room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3","device":"dda7a422-20f7-43e7-a1bc-699acc76e487","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/98250fac-72ec-430f-a739-edee24bce3b3' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0c850243-1374-4ef3-9d35-594cbba46224\" from room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"22/Sep/2024:23:59:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f69cf64d-a57d-4198-8531-acb94230bee9?id=7869b450-f62c-4873-a135-78ef06e16ca6 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.993","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":"817549e4bbdeb8bab7276f51f3de187c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7869b450-f62c-4873-a135-78ef06e16ca6\" in room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7869b450-f62c-4873-a135-78ef06e16ca6\" from room \"http://localhost/rooms/f69cf64d-a57d-4198-8531-acb94230bee9\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"25a52260100043f9d4265c5d76e087f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F98250fac-72ec-430f-a739-edee24bce3b3': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F98250fac-72ec-430f-a739-edee24bce3b3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3d916195-a75c-4f86-86fa-c5d60f1bca54","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.3641944} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"}}},"level":"info","message":"received a callback","requestID":"25a52260100043f9d4265c5d76e087f2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"25a52260100043f9d4265c5d76e087f2","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b12c4ac288a6376e887bcca0ce5ff6b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31629dd7-5551-4327-a89a-9ba9c8158e9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.3679304} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6b12c4ac288a6376e887bcca0ce5ff6b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"}}},"level":"info","message":"received a callback","requestID":"6b12c4ac288a6376e887bcca0ce5ff6b"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"98250fac-72ec-430f-a739-edee24bce3b3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/98250fac-72ec-430f-a739-edee24bce3b3 204 238ms","method":"DELETE","requestID":"bd57b5f0-793e-11ef-9733-5750b05365a5","responseTime":238,"status":204,"url":"/peerconnections/98250fac-72ec-430f-a739-edee24bce3b3"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1f9b0225-b118-4659-98e5-995e93334e77"},"level":"info","message":"Successfully finished experiment","requestID":"9d2ae61501a10af658aca477919fd162"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd8f19a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdda7a422-20f7-43e7-a1bc-699acc76e487","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7532b0b6-c7af-4e39-b91f-98cdf3a22c95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.7056234} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.806035,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd8f19a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487","object_type":"device","rebac_allow":false,"scope_allow":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":"bd8f19a0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd8f19a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling 200 15ms","method":"POST","requestID":"bd8f19a0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/dda7a422-20f7-43e7-a1bc-699acc76e487/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd91ffd0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7c64709-e19a-48dc-bb6d-553277b497a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c259f96-c9c2-4505-a670-5736d5a8631c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.7258098} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.03504,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd91ffd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7c64709-e19a-48dc-bb6d-553277b497a6","object_type":"device","rebac_allow":false,"scope_allow":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":"bd91ffd0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd91ffd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling 200 16ms","method":"POST","requestID":"bd91ffd0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/b7c64709-e19a-48dc-bb6d-553277b497a6/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1f9b0225-b118-4659-98e5-995e93334e77': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1f9b0225-b118-4659-98e5-995e93334e77","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"5193411b-bf34-464e-a65a-889a696d8fd9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.8112488} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59270219-929d-49d3-a17b-82c7d779b34c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049584.8115697} authorization-1 | {"level":"info","message":"POST /relations/update 200 119ms","method":"POST","requestID":"9d2ae61501a10af658aca477919fd162","responseTime":119,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1f9b0225-b118-4659-98e5-995e93334e77","requestID":"9d2ae61501a10af658aca477919fd162"} gateway-1 | {"time_local":"22/Sep/2024:23:59:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1f9b0225-b118-4659-98e5-995e93334e77 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.870","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d2ae61501a10af658aca477919fd162"} gateway-1 | {"time_local":"22/Sep/2024:23:59:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"4.413","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4bdd8766eda386d9998ce23f598d3b5f"} experiment-1 | {"level":"info","message":"DELETE /experiments/1f9b0225-b118-4659-98e5-995e93334e77 204 863ms","method":"DELETE","requestID":"9d2ae61501a10af658aca477919fd162","responseTime":863,"status":204,"url":"/experiments/1f9b0225-b118-4659-98e5-995e93334e77"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 813ms","method":"POST","requestID":"25a52260100043f9d4265c5d76e087f2","responseTime":813,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.818","http_referrer":"","http_user_agent":"node-fetch","requestID":"25a52260100043f9d4265c5d76e087f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NX0.lcajiOvqza5wYSA4zLyurQg4tK8PhIE7N3f4S880C-g","level":"info","message":"auth send jwt","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 814ms","method":"POST","requestID":"6b12c4ac288a6376e887bcca0ce5ff6b","responseTime":814,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.822","http_referrer":"","http_user_agent":"node-fetch","requestID":"6b12c4ac288a6376e887bcca0ce5ff6b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"2.900","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":"9a91af937cb8acbced74ce7dbee3cf78"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.121714,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049585,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NX0.lcajiOvqza5wYSA4zLyurQg4tK8PhIE7N3f4S880C-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","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/b7c64709-e19a-48dc-bb6d-553277b497a6' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"00299310-5cc2-4a06-acc8-11ef6c091e07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.2560503} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b51a992c-ca3d-4cc3-a850-218f211949f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.2612967} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dda7a422-20f7-43e7-a1bc-699acc76e487' closed"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9a312eb7-237d-4e89-abf5-28a9fb512e1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.317064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36b16a2e-4ebc-417f-bc2b-ea026e00aac7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.3174498} authorization-1 | {"level":"info","message":"POST /relations/update 200 59ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"56ab549f-47dd-47d8-a70d-158cbeed979d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.3234112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5"} gateway-1 | {"time_local":"22/Sep/2024:23:59:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5"} device-1 | {"level":"info","message":"POST /devices? 201 144ms","method":"POST","requestID":"2d84c16f29da5a29ea1f68fdb7df5bb5","responseTime":144,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NX0.lcajiOvqza5wYSA4zLyurQg4tK8PhIE7N3f4S880C-g","level":"info","message":"auth send jwt","requestID":"86275205f24e0b7edbb68865fd8d16aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"86275205f24e0b7edbb68865fd8d16aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"86275205f24e0b7edbb68865fd8d16aa"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.628,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"86275205f24e0b7edbb68865fd8d16aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049585,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4NX0.lcajiOvqza5wYSA4zLyurQg4tK8PhIE7N3f4S880C-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bf33aa6b-3b41-4aaa-9433-07bf7dafa4a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.3867824} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a728c69-4609-4f58-8745-a66182b16e76","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.3935645} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"33cc515e-e805-4961-b622-49234165b42b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.5661767} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79a77def-291b-41b5-bbb1-8dd8a2acd799","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.5666883} authorization-1 | {"level":"info","message":"POST /relations/update 200 177ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","responseTime":177,"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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"1af74951-1738-426a-806d-070b476e9438","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049585.5756762} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"86275205f24e0b7edbb68865fd8d16aa"} gateway-1 | {"time_local":"22/Sep/2024:23:59:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.251","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"86275205f24e0b7edbb68865fd8d16aa"} device-1 | {"level":"info","message":"POST /devices? 201 245ms","method":"POST","requestID":"86275205f24e0b7edbb68865fd8d16aa","responseTime":245,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Nn0.zm5nKcZSNZq5k3uYtAKfAmxwoVFV8AFBvswy6nIRJqw","level":"info","message":"auth send jwt","requestID":"61996f99a1fb92ac90fe801a8bb5a18c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"61996f99a1fb92ac90fe801a8bb5a18c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698143,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"61996f99a1fb92ac90fe801a8bb5a18c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049586,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Nn0.zm5nKcZSNZq5k3uYtAKfAmxwoVFV8AFBvswy6nIRJqw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"f8d92614-bf69-4b5a-971a-19a7f92ad8f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049586.0888016} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00cd367f-d74f-4e97-ba0f-0c4fb5d4a967","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049586.0980365} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"c1f6e7ce-e4e1-453c-8a9c-e632dd10f97b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049586.130507} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"61996f99a1fb92ac90fe801a8bb5a18c"} gateway-1 | {"time_local":"22/Sep/2024:23:59:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.069","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"61996f99a1fb92ac90fe801a8bb5a18c"} device-1 | {"level":"info","message":"PATCH /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1 200 61ms","method":"PATCH","requestID":"61996f99a1fb92ac90fe801a8bb5a18c","responseTime":61,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Nn0.zm5nKcZSNZq5k3uYtAKfAmxwoVFV8AFBvswy6nIRJqw","level":"info","message":"auth send jwt","requestID":"b8ef91880dc62677a80bb98b08ab57f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b8ef91880dc62677a80bb98b08ab57f4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b8ef91880dc62677a80bb98b08ab57f4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.996805,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b8ef91880dc62677a80bb98b08ab57f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049586,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4Nn0.zm5nKcZSNZq5k3uYtAKfAmxwoVFV8AFBvswy6nIRJqw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b8ef91880dc62677a80bb98b08ab57f4","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b8ef91880dc62677a80bb98b08ab57f4"} gateway-1 | {"time_local":"22/Sep/2024:23:59:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b8ef91880dc62677a80bb98b08ab57f4"} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/websocket 200 22ms","method":"POST","requestID":"b8ef91880dc62677a80bb98b08ab57f4","responseTime":22,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6310c045b8e94488485ade607979f6f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6310c045b8e94488485ade607979f6f7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/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":"6310c045b8e94488485ade607979f6f7"} device-1 | {"level":"info","message":"OPTIONS /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/websocket 200 1ms","method":"OPTIONS","requestID":"6310c045b8e94488485ade607979f6f7","responseTime":1,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"dee4b4da3fa270de30708bd081dad1cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dee4b4da3fa270de30708bd081dad1cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dee4b4da3fa270de30708bd081dad1cd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248853,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dee4b4da3fa270de30708bd081dad1cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dee4b4da3fa270de30708bd081dad1cd","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dee4b4da3fa270de30708bd081dad1cd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","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":"dee4b4da3fa270de30708bd081dad1cd"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/websocket 200 31ms","method":"POST","requestID":"dee4b4da3fa270de30708bd081dad1cd","responseTime":31,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b3a35939a12c6dd2ee021ed9fff4078","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8b3a35939a12c6dd2ee021ed9fff4078","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8b3a35939a12c6dd2ee021ed9fff4078"} device-1 | {"level":"info","message":"OPTIONS /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 1ms","method":"OPTIONS","requestID":"8b3a35939a12c6dd2ee021ed9fff4078","responseTime":1,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"83021c9aa21ee5ea2c36172c288fb6fb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"83021c9aa21ee5ea2c36172c288fb6fb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050562,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"83021c9aa21ee5ea2c36172c288fb6fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"42b43246-d696-4ee7-8d7d-c701bc373437","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.6968217} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03880000-4afb-4e65-b26d-04d3baec181a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.7059927} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"ab3d5d1e-25df-4177-be90-4be06acaff49","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.7185433} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"83021c9aa21ee5ea2c36172c288fb6fb"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","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":"83021c9aa21ee5ea2c36172c288fb6fb"} device-1 | {"level":"info","message":"PATCH /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 41ms","method":"PATCH","requestID":"83021c9aa21ee5ea2c36172c288fb6fb","responseTime":41,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"2b5fc642475a1fde63af05e5bc628a5d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2b5fc642475a1fde63af05e5bc628a5d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b5fc642475a1fde63af05e5bc628a5d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363982,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2b5fc642475a1fde63af05e5bc628a5d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b5fc642475a1fde63af05e5bc628a5d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"3493ff33-fb47-45fb-bc14-e75a01467a28","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.7500985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2b5fc642475a1fde63af05e5bc628a5d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b5fc642475a1fde63af05e5bc628a5d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b5fc642475a1fde63af05e5bc628a5d"} device-1 | {"level":"info","message":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? 200 20ms","method":"GET","requestID":"2b5fc642475a1fde63af05e5bc628a5d","responseTime":20,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"83b33e06674cf70d8b3858802967f2b9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83b33e06674cf70d8b3858802967f2b9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83b33e06674cf70d8b3858802967f2b9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190724,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"83b33e06674cf70d8b3858802967f2b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"83b33e06674cf70d8b3858802967f2b9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"71b3c89f-a2a3-4fca-b26e-3bfe5623db3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.777669} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"83b33e06674cf70d8b3858802967f2b9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83b33e06674cf70d8b3858802967f2b9"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83b33e06674cf70d8b3858802967f2b9"} device-1 | {"level":"info","message":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 19ms","method":"GET","requestID":"83b33e06674cf70d8b3858802967f2b9","responseTime":19,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"69005e2d341f0c7b07f3c9a1b25e8556","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.163622,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"69005e2d341f0c7b07f3c9a1b25e8556","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69005e2d341f0c7b07f3c9a1b25e8556","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to run experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to book experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully booked experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf6f2440-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf6f7260-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208631,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf6f2440-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bf6f2440-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225086,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf6f7260-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bf6f7260-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"a38e6ccf-01f2-42e5-a1bd-3189e4711836","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.8608184} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"bf6f2440-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"8ffb994c-9305-4dde-8687-e1a5aca5bfca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.8625731} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf6f7260-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf6f2440-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? 200 26ms","method":"GET","requestID":"bf6f2440-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf6f7260-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 26ms","method":"GET","requestID":"bf6f7260-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Setting up experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully set up experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf7bce70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf7bf580-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully running experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf7c6ab0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883113,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf7bce70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf7bce70-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699507,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf7bf580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bf7bf580-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.261598,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e4f6ad3-ca62-4f86-9229-201ac066def4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9443738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"3b5bbe40-7c61-41cc-933e-24863602d76f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.94456} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf7bce70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf7c6ab0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","rebac_allow":false,"scope_allow":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":"bf7c6ab0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"1e454b3b-be46-4fbf-9fe7-2460d98d46c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9461844} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf7bf580-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf7bce70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? 200 27ms","method":"GET","requestID":"bf7bce70-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9bb75db6-a770-41cb-9cb7-6e0a10ac493d#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9bb75db6-a770-41cb-9cb7-6e0a10ac493d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"056871f9-9a5f-4f95-98d8-0d12d9eca95b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9557126} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf7c6ab0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b05b1b3-b7d4-4253-9f4a-2a9ad0806168","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9559872} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling 200 25ms","method":"POST","requestID":"bf7c6ab0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf7bf580-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"69005e2d341f0c7b07f3c9a1b25e8556","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 31ms","method":"GET","requestID":"bf7bf580-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf80d780-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf819ad0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8431533f-6e7f-4c66-9092-6bd8f4554dab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9661698} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.675021,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf80d780-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","rebac_allow":false,"scope_allow":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":"bf80d780-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"69005e2d341f0c7b07f3c9a1b25e8556","responseTime":174,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"937fb4c3-113c-44fb-aba6-4482c2a513da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.972176} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf80d780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling 200 13ms","method":"POST","requestID":"bf80d780-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.082948,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf819ad0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","rebac_allow":false,"scope_allow":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":"bf819ad0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"49d2841273d6120b58db1aafd11731e8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49d2841273d6120b58db1aafd11731e8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"49d2841273d6120b58db1aafd11731e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf819ad0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling 200 15ms","method":"POST","requestID":"bf819ad0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.812146,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"49d2841273d6120b58db1aafd11731e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49d2841273d6120b58db1aafd11731e8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf8459f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"bae09f99-2697-4432-81fc-b0a64bfed2b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9873846} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b2b0fd7-5418-49e6-a362-e2ceb32a7302","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049587.9875476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49d2841273d6120b58db1aafd11731e8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.351271,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf8459f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf8459f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"49d2841273d6120b58db1aafd11731e8"} gateway-1 | {"time_local":"22/Sep/2024:23:59:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49d2841273d6120b58db1aafd11731e8"} device-1 | {"level":"info","message":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? 200 16ms","method":"GET","requestID":"49d2841273d6120b58db1aafd11731e8","responseTime":16,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf8459f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling 200 11ms","method":"POST","requestID":"bf8459f0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf867cd0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo","level":"info","message":"auth send jwt","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf86caf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638751,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf867cd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf867cd0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67488,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf86caf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bf86caf0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.965723,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.317041735Z"}]},"request_id":"ec62ce01-6141-4878-a49c-dc9da3ab015e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0069058} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf867cd0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"90fd9178-0ea8-4616-9378-24b3210f9942","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0092046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf86caf0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:45.566155231Z"}]},"request_id":"8a1edfb1-c4a6-4d5b-be87-7ae8487f753e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0113673} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf867cd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1? 200 16ms","method":"GET","requestID":"bf867cd0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf86caf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 16ms","method":"GET","requestID":"bf86caf0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Building connection plan","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? 200 16ms","method":"GET","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11","responseTime":16,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6d3e4e8ce2cfd73a60122d9f0f9fc11"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"51b4d828-d464-4a1d-8b90-a7e8868447d6"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"834316a5-f5a3-463e-8243-7371de5a1dc0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c59c1e19-daf0-4e87-a93e-5ee678ec0c92"}]},"level":"info","message":"Built pairwise service configurations","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"bf89b120-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"bf89b120-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"bf89b120-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9?id=69fb78e5-8b79-4e65-9908-7d564ed945b9","ws://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9?id=5507e329-8462-4c39-9e74-23a185a0aeb8"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.703347,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf8a2650-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049587,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4N30.O2sgQSPAVQVOPEgNAIbmpK2RX8oKe8pmxQQWySvhMqo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"df86c501-e94c-47b6-bbe7-585fc7d23c47","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0333295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c559794-6081-426f-918c-80ac1c0cedae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0335145} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333'","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333'","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"bf8a2650-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"bf8a2650-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bf8fa490-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5507e329-8462-4c39-9e74-23a185a0aeb8\" in room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\"","requestID":"bf8fa490-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bf8fa490-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bf8ff2b0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"69fb78e5-8b79-4e65-9908-7d564ed945b9\" in room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\"","requestID":"bf8ff2b0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bf8ff2b0-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3feaa1224762f0854e591f488af08c17","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3feaa1224762f0854e591f488af08c17","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"}}},"level":"info","message":"received a callback","requestID":"3feaa1224762f0854e591f488af08c17"} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"3feaa1224762f0854e591f488af08c17","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"3feaa1224762f0854e591f488af08c17"} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"69005e2d341f0c7b07f3c9a1b25e8556"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf94fbc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39bfae3f-bd6b-4d09-bdef-7d4355eba95d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.0965247} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.322127,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf94fbc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","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":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf94fbc0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18ad3c34a3a05d3add0cf3f44b776533","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"18ad3c34a3a05d3add0cf3f44b776533","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"}}},"level":"info","message":"received a callback","requestID":"18ad3c34a3a05d3add0cf3f44b776533"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf94fbc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling 200 11ms","method":"POST","requestID":"bf94fbc0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf971ea0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1006f319-25c9-4f8f-a625-647aab86b4a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.1116502} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.533458,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf971ea0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","rebac_allow":false,"scope_allow":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":"bf971ea0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bf987e30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf971ea0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling 200 13ms","method":"POST","requestID":"bf971ea0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6401ec60-1da0-4f99-98e3-6d390237e333","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8553181-1104-4368-a1b5-53dd0a2629d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.1243536} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.376565,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf987e30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333","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":"bf987e30-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bf987e30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333 200 13ms","method":"GET","requestID":"bf987e30-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"18ad3c34a3a05d3add0cf3f44b776533","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"18ad3c34a3a05d3add0cf3f44b776533"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf9d3920-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a133fc72-a347-4425-810b-bbc8d3d67f42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.1517365} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.400875,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf9d3920-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","rebac_allow":false,"scope_allow":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":"bf9d3920-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf9d3920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling 200 10ms","method":"POST","requestID":"bf9d3920-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf9f34f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"949426b2-88b2-4123-864b-c5d821e7f051","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.163892} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.432422,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf9f34f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","rebac_allow":false,"scope_allow":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":"bf9f34f0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"a9e82de81bddd547c0ff43b46f77c50f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a9e82de81bddd547c0ff43b46f77c50f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","requestID":"a9e82de81bddd547c0ff43b46f77c50f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf9f34f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling 200 9ms","method":"POST","requestID":"bf9f34f0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.686856,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a9e82de81bddd547c0ff43b46f77c50f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9e82de81bddd547c0ff43b46f77c50f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","requestID":"a9e82de81bddd547c0ff43b46f77c50f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a9e82de81bddd547c0ff43b46f77c50f"} experiment-1 | {"level":"info","message":"GET /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d 200 11ms","method":"GET","requestID":"a9e82de81bddd547c0ff43b46f77c50f","responseTime":11,"status":200,"url":"/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"372c40d061005b2804ebc98cdd57600f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"372c40d061005b2804ebc98cdd57600f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","requestID":"372c40d061005b2804ebc98cdd57600f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.724749,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"372c40d061005b2804ebc98cdd57600f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"372c40d061005b2804ebc98cdd57600f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Attempting to finish experiment","requestID":"372c40d061005b2804ebc98cdd57600f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bfa46510-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.740196,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bfa46510-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bfa46510-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9?id=5507e329-8462-4c39-9e74-23a185a0aeb8 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"32f2e5f25fe62c8dae0df9f0d0da2898"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5507e329-8462-4c39-9e74-23a185a0aeb8\" in room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5507e329-8462-4c39-9e74-23a185a0aeb8\" from room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333","device":"fa7c4685-8f9a-4778-ba6c-c884b15c6932","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9?id=69fb78e5-8b79-4e65-9908-7d564ed945b9 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.148","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":"d86d97a72fb47cacb06a1f58ec5f29cd"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"69fb78e5-8b79-4e65-9908-7d564ed945b9\" in room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\""} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"69fb78e5-8b79-4e65-9908-7d564ed945b9\" from room \"http://localhost/rooms/681b888d-0b89-4311-9a5c-00b9f4eb43f9\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"279b73616bf60d10fc16ea5091fde6a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6401ec60-1da0-4f99-98e3-6d390237e333': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6401ec60-1da0-4f99-98e3-6d390237e333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"812cabf0-1583-47af-84af-cdeaadd953e0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2088633} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"279b73616bf60d10fc16ea5091fde6a8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0da2c5af-e0e4-4810-b945-8bce8bc10d7f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2092328} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e913efc8ec97794a19c668fe9bdcb59f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 8ms","method":"POST","requestID":"bfa46510-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e913efc8ec97794a19c668fe9bdcb59f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"}}},"level":"info","message":"received a callback","requestID":"279b73616bf60d10fc16ea5091fde6a8"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"}}},"level":"info","message":"received a callback","requestID":"e913efc8ec97794a19c668fe9bdcb59f"} device-1 | {"data":{"peerconnection":"6401ec60-1da0-4f99-98e3-6d390237e333","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bfa46510-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333 204 33ms","method":"DELETE","requestID":"bfa46510-793e-11ef-9733-5750b05365a5","responseTime":33,"status":204,"url":"/peerconnections/6401ec60-1da0-4f99-98e3-6d390237e333"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"},"level":"info","message":"Successfully finished experiment","requestID":"372c40d061005b2804ebc98cdd57600f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfabdf20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa7c4685-8f9a-4778-ba6c-c884b15c6932","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d003c62-401b-4f86-be63-34fef4d0bde4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2478938} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.212451,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bfabdf20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bfabdf20-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfabdf20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling 200 11ms","method":"POST","requestID":"bfabdf20-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfaddaf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9bb75db6-a770-41cb-9cb7-6e0a10ac493d': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9bb75db6-a770-41cb-9cb7-6e0a10ac493d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"daee01b8-64f4-40be-bf0e-42485ffa9f55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2562423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"641b4273-d7b5-4c6e-a1f2-3e26c12b494a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2563806} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"372c40d061005b2804ebc98cdd57600f","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32b66cc3-fd69-4286-86d6-4cbe2183567a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.2611935} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.53253,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bfaddaf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfaddaf0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfaddaf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling 200 11ms","method":"POST","requestID":"bfaddaf0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d","requestID":"372c40d061005b2804ebc98cdd57600f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"372c40d061005b2804ebc98cdd57600f"} experiment-1 | {"level":"info","message":"DELETE /experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d 204 133ms","method":"DELETE","requestID":"372c40d061005b2804ebc98cdd57600f","responseTime":133,"status":204,"url":"/experiments/9bb75db6-a770-41cb-9cb7-6e0a10ac493d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"2.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8578d641d141245655fbca14de263066"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"279b73616bf60d10fc16ea5091fde6a8","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"279b73616bf60d10fc16ea5091fde6a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"e913efc8ec97794a19c668fe9bdcb59f","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"e913efc8ec97794a19c668fe9bdcb59f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"bd4dee241fa1232a78af2f153aaafdfa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bd4dee241fa1232a78af2f153aaafdfa"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.701","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f6fd414b8f11ec2959d0d3454d57230c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.734823,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd4dee241fa1232a78af2f153aaafdfa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/fec3dfe4-0a3e-424e-9145-f4c6d01ff1a1' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a8ff9a94-cbea-4c51-8220-277284919dcc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.3453956} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/fa7c4685-8f9a-4778-ba6c-c884b15c6932' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29e840db-11ce-4627-94a2-54f9060748fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.350534} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"37af0e7b-f9f0-48bd-a809-d55a6c5eb6d4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.3614666} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99f9c3bc-1bd6-4d6f-b2de-764451f336b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.361601} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"dfa062e1-ef0b-4390-82f1-a1864980aa24","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.3661} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bd4dee241fa1232a78af2f153aaafdfa"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"bd4dee241fa1232a78af2f153aaafdfa","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd4dee241fa1232a78af2f153aaafdfa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"002068f9021ad285e7362bec3afe300d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"002068f9021ad285e7362bec3afe300d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"002068f9021ad285e7362bec3afe300d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.714447,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"002068f9021ad285e7362bec3afe300d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"446a8c3f-1ff3-4e94-bd5d-e4e342673e31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.3951652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e96919e-a8b4-42b4-ac29-17fb20cfa00d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.400471} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a6fde014-1bc2-4889-9613-7ffa4a1b6443","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.4102747} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62e80896-560c-4cef-ae61-266feaccddb6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.4105446} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"78097492-c7d4-4fe4-a6ca-cf8294a1007a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.4146616} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"002068f9021ad285e7362bec3afe300d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"002068f9021ad285e7362bec3afe300d"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"002068f9021ad285e7362bec3afe300d","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"96f312efcc8433d3bb12e4d3994bfb19"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"c7ea46379352e6995d4156f3f367f5e0"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"c7ea46379352e6995d4156f3f367f5e0","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"96f312efcc8433d3bb12e4d3994bfb19"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c7ea46379352e6995d4156f3f367f5e0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202609,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"96f312efcc8433d3bb12e4d3994bfb19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762166,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7ea46379352e6995d4156f3f367f5e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7ea46379352e6995d4156f3f367f5e0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"6c614f50-d7b0-4e35-85ca-ab1abfd702ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.8942356} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"3fbae002-aa33-4c4c-a78d-4c551cee95c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.895714} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7ea46379352e6995d4156f3f367f5e0","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ab1b429-87bb-4913-b74d-0684d3f4e06a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.9022343} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":6,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"474d9b4a-af5a-4ff9-9f4e-38affa9addcb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.9052193} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c7ea46379352e6995d4156f3f367f5e0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"11bd3874-50fd-4048-8ff6-8efcb8141c31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.909846} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c7ea46379352e6995d4156f3f367f5e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c7ea46379352e6995d4156f3f367f5e0"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c7ea46379352e6995d4156f3f367f5e0"} device-1 | {"level":"info","message":"PATCH /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e 200 31ms","method":"PATCH","requestID":"c7ea46379352e6995d4156f3f367f5e0","responseTime":31,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"cc695cfddd137c5d60575ab74f19eb56"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cc695cfddd137c5d60575ab74f19eb56","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cc695cfddd137c5d60575ab74f19eb56"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"93120052-0f5b-4ab2-bbf4-057dfe82b74a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.921559} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94202,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"96f312efcc8433d3bb12e4d3994bfb19"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc695cfddd137c5d60575ab74f19eb56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cc695cfddd137c5d60575ab74f19eb56","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.056","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"96f312efcc8433d3bb12e4d3994bfb19"} device-1 | {"level":"info","message":"PATCH /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd 200 47ms","method":"PATCH","requestID":"96f312efcc8433d3bb12e4d3994bfb19","responseTime":47,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"3932fc032136eacf009dfd8363116fe0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3932fc032136eacf009dfd8363116fe0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3932fc032136eacf009dfd8363116fe0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929299,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3932fc032136eacf009dfd8363116fe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3932fc032136eacf009dfd8363116fe0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cc695cfddd137c5d60575ab74f19eb56"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cc695cfddd137c5d60575ab74f19eb56"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/websocket 200 19ms","method":"POST","requestID":"cc695cfddd137c5d60575ab74f19eb56","responseTime":19,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3932fc032136eacf009dfd8363116fe0"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3932fc032136eacf009dfd8363116fe0"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/websocket 200 16ms","method":"POST","requestID":"3932fc032136eacf009dfd8363116fe0","responseTime":16,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714914,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"f9a8593a-0aec-4d3d-bf20-9a34e00bf8c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049588.9884322} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2"} device-1 | {"level":"info","message":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? 200 17ms","method":"GET","requestID":"aa9c8d0a6321d133ef75cd0e5289c6a2","responseTime":17,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M","level":"info","message":"auth send jwt","requestID":"5ee70ba365e5fca5b516165052aefd70"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5ee70ba365e5fca5b516165052aefd70","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ee70ba365e5fca5b516165052aefd70"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.654926,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5ee70ba365e5fca5b516165052aefd70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049588,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OH0.LsZLJxEbg0WEYRsqe3SbD5UjZLx_3Iy3OK2Mzu0V60M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ee70ba365e5fca5b516165052aefd70","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"0501a2bc-cb7c-4cc3-a74f-73a44d4f2397","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.011899} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5ee70ba365e5fca5b516165052aefd70","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ee70ba365e5fca5b516165052aefd70"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ee70ba365e5fca5b516165052aefd70"} device-1 | {"level":"info","message":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? 200 16ms","method":"GET","requestID":"5ee70ba365e5fca5b516165052aefd70","responseTime":16,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"614e71b9621447c2e82fb35d06958d2f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"614e71b9621447c2e82fb35d06958d2f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"614e71b9621447c2e82fb35d06958d2f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.291433,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"614e71b9621447c2e82fb35d06958d2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"614e71b9621447c2e82fb35d06958d2f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to run experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to book experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully booked experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c02a8500-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c02ad320-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.5704,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c02a8500-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c02a8500-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784986,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c02ad320-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c02ad320-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"99a22bbb-8461-4650-a5c6-9a2241aac0af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.085127} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c02a8500-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"46d4e662-5220-4a1e-8970-be6f1f6cab87","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.086931} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c02ad320-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c02a8500-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Setting up experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? 200 21ms","method":"GET","requestID":"c02a8500-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c02ad320-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? 200 20ms","method":"GET","requestID":"c02ad320-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully set up experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0355a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c035a890-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c035f6b0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully running experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.051474,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0355a70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c0355a70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971752,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c035a890-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c035a890-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.031661,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd63ade3-e706-4644-ad1b-290670d34eff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.156786} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c035f6b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","rebac_allow":false,"scope_allow":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":"c035f6b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"65db95cd-6415-4000-8ada-7651c13dae9b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.161634} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"0fce6381-2e4a-426e-a466-6c79c8c3d39e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.163243} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c0355a70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c035a890-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c035f6b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling 200 23ms","method":"POST","requestID":"c035f6b0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0355a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? 200 29ms","method":"GET","requestID":"c0355a70-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c035a890-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? 200 29ms","method":"GET","requestID":"c035a890-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c03a3c70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c03a8a90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b531076-b49a-46ad-a971-a0cba289eafc#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b531076-b49a-46ad-a971-a0cba289eafc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"60747e81-cd40-48ce-946d-26d4dbf3f4b5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.1809063} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6327d87c-0a05-41bd-a663-cba8fc43721a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.1812904} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f8495a4-226e-4d5e-884a-36e116fc1cff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.1844857} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa1486a9-4641-4ad9-82ba-ed5c1c44d0d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.1853833} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.617252,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"614e71b9621447c2e82fb35d06958d2f","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c03a3c70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","rebac_allow":false,"scope_allow":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":"c03a3c70-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.23481,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c03a8a90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","rebac_allow":false,"scope_allow":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":"c03a8a90-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c03a3c70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling 200 21ms","method":"POST","requestID":"c03a3c70-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c03a8a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling 200 20ms","method":"POST","requestID":"c03a8a90-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c03e5b20-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"614e71b9621447c2e82fb35d06958d2f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 179ms","method":"POST","requestID":"614e71b9621447c2e82fb35d06958d2f","responseTime":179,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b970cc71-9b28-4acb-89aa-9596bfac19d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2094896} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"4407dcab42be0ace9c48010eb9739e3c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.960899,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4407dcab42be0ace9c48010eb9739e3c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c03e5b20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","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 called","requestID":"4407dcab42be0ace9c48010eb9739e3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c03e5b20-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894456,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c03e5b20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling 200 13ms","method":"POST","requestID":"c03e5b20-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4407dcab42be0ace9c48010eb9739e3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4407dcab42be0ace9c48010eb9739e3c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c040a510-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c040f330-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"4adcc34b-d4c3-45d5-8b9c-501dabbfbd46","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2195158} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4407dcab42be0ace9c48010eb9739e3c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657868,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c040a510-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4407dcab42be0ace9c48010eb9739e3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c040a510-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668133,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4407dcab42be0ace9c48010eb9739e3c"} device-1 | {"level":"info","message":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? 200 14ms","method":"GET","requestID":"4407dcab42be0ace9c48010eb9739e3c","responseTime":14,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c040f330-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c040f330-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.361453618Z"}]},"request_id":"bb21763f-e363-4dab-a4b6-b4ebdd901cc9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2294464} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"7cce9ee031970c1289652437aa667b5f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7cce9ee031970c1289652437aa667b5f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c040a510-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"2cf433b8-dca0-46f0-b771-73a3100e5507","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.230555} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c040f330-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cce9ee031970c1289652437aa667b5f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063049,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7cce9ee031970c1289652437aa667b5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7cce9ee031970c1289652437aa667b5f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c040a510-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e? 200 21ms","method":"GET","requestID":"c040a510-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c040f330-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? 200 20ms","method":"GET","requestID":"c040f330-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Building connection plan","requestID":"614e71b9621447c2e82fb35d06958d2f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"fd9db66a-06be-461d-ade7-644e2d6071b0"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"1d1dadec-d034-4bd0-98c5-724b7b90d19d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1a1a4b12-d721-4753-b913-882cfbf5bced"}]},"level":"info","message":"Built pairwise service configurations","requestID":"614e71b9621447c2e82fb35d06958d2f"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"c04475a0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"c04475a0-793e-11ef-a51e-0dff660adfff"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:48.410261638Z"}]},"request_id":"ced8260d-30bd-4c20-82b4-5055ecc3fc91","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2435243} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cce9ee031970c1289652437aa667b5f","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"c04475a0-793e-11ef-a51e-0dff660adfff","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb?id=4f267915-390d-481e-8714-2b0f2a705ee6","ws://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb?id=2f45b3f8-fec7-47c7-bdd8-08dcdaedf6ad"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cce9ee031970c1289652437aa667b5f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7cce9ee031970c1289652437aa667b5f"} device-1 | {"level":"info","message":"GET /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd? 200 18ms","method":"GET","requestID":"7cce9ee031970c1289652437aa667b5f","responseTime":18,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.806647,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0456000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0456000-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"0a7bc5af-1983-460b-9d87-de6c4aa2f9c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2610903} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7809f393-8264-4e9c-8106-4e7b89a85546","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.2612808} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c0456000-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e'","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e'","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c0456000-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"c0456000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c04ade40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4f267915-390d-481e-8714-2b0f2a705ee6\" in room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\"","requestID":"c04ade40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c04ade40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c04b0550-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f45b3f8-fec7-47c7-bdd8-08dcdaedf6ad\" in room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\"","requestID":"c04b0550-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c04b0550-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8c34ad46400f3a4977c7027f9bb9efd0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8c34ad46400f3a4977c7027f9bb9efd0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"}}},"level":"info","message":"received a callback","requestID":"8c34ad46400f3a4977c7027f9bb9efd0"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"8c34ad46400f3a4977c7027f9bb9efd0","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"8c34ad46400f3a4977c7027f9bb9efd0"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"614e71b9621447c2e82fb35d06958d2f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0503570-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86ca23888e9179269b4d883e6d1941dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"258f0679-092c-4fa1-b77b-91b1117823a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.3242097} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"86ca23888e9179269b4d883e6d1941dd","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.620043,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0503570-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","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":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"}}},"level":"info","message":"received a callback","requestID":"86ca23888e9179269b4d883e6d1941dd"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0503570-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c051e320-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0503570-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling 200 15ms","method":"POST","requestID":"c0503570-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd26a6949-1788-4b35-87a3-1c421bb28d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f615bdcc-1db6-4840-b191-2c9c6b047bcb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.3353198} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.582252,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c051e320-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e","object_type":"peerconnection","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 called","requestID":"c052cd80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c051e320-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c051e320-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e 200 10ms","method":"GET","requestID":"c051e320-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"090973c2-a0a8-4a6a-8ea2-49e0aa9b7329","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.3418472} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.193968,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c052cd80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c052cd80-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c052cd80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling 200 10ms","method":"POST","requestID":"c052cd80-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"86ca23888e9179269b4d883e6d1941dd","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"86ca23888e9179269b4d883e6d1941dd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c05601d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"012fab59-2cfa-40d4-a984-a386ad9fad8d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.3617115} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.418619,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c05601d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c05601d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c05601d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling 200 9ms","method":"POST","requestID":"c05601d0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0578870-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9eeaeb19-30bf-4a5f-b679-1a1bba7d2d1b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.3726091} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.391432,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0578870-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0578870-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0578870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling 200 10ms","method":"POST","requestID":"c0578870-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7b531076-b49a-46ad-a971-a0cba289eafc","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.698493,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d77736dc99296ec4e3b0a2a8a9ec625","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7b531076-b49a-46ad-a971-a0cba289eafc","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625"} experiment-1 | {"level":"info","message":"GET /experiments/7b531076-b49a-46ad-a971-a0cba289eafc 200 14ms","method":"GET","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625","responseTime":14,"status":200,"url":"/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7b531076-b49a-46ad-a971-a0cba289eafc HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d77736dc99296ec4e3b0a2a8a9ec625"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"746695cbee1847ddfb25da585b5f464b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"746695cbee1847ddfb25da585b5f464b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7b531076-b49a-46ad-a971-a0cba289eafc","requestID":"746695cbee1847ddfb25da585b5f464b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.982264,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"746695cbee1847ddfb25da585b5f464b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"746695cbee1847ddfb25da585b5f464b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Attempting to finish experiment","requestID":"746695cbee1847ddfb25da585b5f464b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c0603b00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.744871,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0603b00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0603b00-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb?id=4f267915-390d-481e-8714-2b0f2a705ee6 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b3f2324ddc201daed7fc7c9be73e3e5b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb?id=2f45b3f8-fec7-47c7-bdd8-08dcdaedf6ad HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3302d1d94858ec6f31faadeac201f404"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4f267915-390d-481e-8714-2b0f2a705ee6\" in room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4f267915-390d-481e-8714-2b0f2a705ee6\" from room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2f45b3f8-fec7-47c7-bdd8-08dcdaedf6ad\" in room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2f45b3f8-fec7-47c7-bdd8-08dcdaedf6ad\" from room \"http://localhost/rooms/2485d264-6abb-4bb2-b401-fc1e2eeb8bdb\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db3627300493fc6c60a1197cb502111e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"db3627300493fc6c60a1197cb502111e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07302512e5e04b505f36e8ff9ef9317d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd26a6949-1788-4b35-87a3-1c421bb28d4e': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd26a6949-1788-4b35-87a3-1c421bb28d4e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"cb7f2a24-0478-4ed8-8906-7d392571fce2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.4472494} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"07302512e5e04b505f36e8ff9ef9317d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ff671ea-d5e8-44f8-bb43-620afc72367b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.4475307} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"}}},"level":"info","message":"received a callback","requestID":"db3627300493fc6c60a1197cb502111e"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c0603b00-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"}}},"level":"info","message":"received a callback","requestID":"07302512e5e04b505f36e8ff9ef9317d"} device-1 | {"data":{"peerconnection":"d26a6949-1788-4b35-87a3-1c421bb28d4e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c0603b00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e 204 47ms","method":"DELETE","requestID":"c0603b00-793e-11ef-9733-5750b05365a5","responseTime":47,"status":204,"url":"/peerconnections/d26a6949-1788-4b35-87a3-1c421bb28d4e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"},"level":"info","message":"Successfully finished experiment","requestID":"746695cbee1847ddfb25da585b5f464b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c06b5e90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c14f3b9-1787-489a-bbbb-53c486ec55cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d224556f-8b73-4993-beed-771c95e68116","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.5055082} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.505578,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c06b5e90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd","object_type":"device","rebac_allow":false,"scope_allow":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":"c06b5e90-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c06b5e90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling 200 16ms","method":"POST","requestID":"c06b5e90-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/3c14f3b9-1787-489a-bbbb-53c486ec55cd/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b531076-b49a-46ad-a971-a0cba289eafc': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b531076-b49a-46ad-a971-a0cba289eafc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"e94b5ef6-3ed8-4237-8859-fd489393c2a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.5137682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbefee46-8727-48ce-99c9-cf68f61ed00b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.5143733} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"746695cbee1847ddfb25da585b5f464b","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c06e6bd0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabd145e5-2d14-40e1-aa06-9b7cfccc565e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1e89985-23bd-4748-9aa2-63543dbc053d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.5238726} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.529342,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c06e6bd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e","object_type":"device","rebac_allow":false,"scope_allow":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":"c06e6bd0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c06e6bd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling 200 14ms","method":"POST","requestID":"c06e6bd0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7b531076-b49a-46ad-a971-a0cba289eafc","requestID":"746695cbee1847ddfb25da585b5f464b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7b531076-b49a-46ad-a971-a0cba289eafc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"746695cbee1847ddfb25da585b5f464b"} experiment-1 | {"level":"info","message":"DELETE /experiments/7b531076-b49a-46ad-a971-a0cba289eafc 204 172ms","method":"DELETE","requestID":"746695cbee1847ddfb25da585b5f464b","responseTime":172,"status":204,"url":"/experiments/7b531076-b49a-46ad-a971-a0cba289eafc"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.636","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"73108e63e755708868bc4aa332057e6a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.644","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"046a3b5a87a3aaf49a7945968cd475bd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"db3627300493fc6c60a1197cb502111e"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"07302512e5e04b505f36e8ff9ef9317d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"db3627300493fc6c60a1197cb502111e","responseTime":139,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"07302512e5e04b505f36e8ff9ef9317d","responseTime":137,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"1b2ae4c5268e39bf482db53268313618"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b2ae4c5268e39bf482db53268313618","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b2ae4c5268e39bf482db53268313618"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/abd145e5-2d14-40e1-aa06-9b7cfccc565e' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.002941,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1b2ae4c5268e39bf482db53268313618","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","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/3c14f3b9-1787-489a-bbbb-53c486ec55cd' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde661461-04bc-4f66-8b9d-8bfea1b1762b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"10392cb4-6e50-4ec6-a458-2f300b1c7575","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6154134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"543cf6e2-a259-4873-a0ed-e6cf94e41e45","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6225116} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde661461-04bc-4f66-8b9d-8bfea1b1762b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"204c9632-5b77-4829-a60f-cad58e343ceb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6329312} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf142ed0-f7e2-4fc7-8072-5ca08e618071","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6333416} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde661461-04bc-4f66-8b9d-8bfea1b1762b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde661461-04bc-4f66-8b9d-8bfea1b1762b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.632914002Z"}]},"request_id":"d873d2bb-2cd3-41d4-92d2-c6d61c9d9513","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6391788} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b2ae4c5268e39bf482db53268313618"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b2ae4c5268e39bf482db53268313618"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"1b2ae4c5268e39bf482db53268313618","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"dd248a7130fa01b48443a6016830bb0e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dd248a7130fa01b48443a6016830bb0e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dd248a7130fa01b48443a6016830bb0e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.81361,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dd248a7130fa01b48443a6016830bb0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3435228b-ef3c-44e4-852e-aa85adc77545","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"15fbd6b9-d290-4ff3-a649-b9ee71c372fe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6679697} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f59969e8-ad1a-4d88-841a-2386ac2e3ccf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6732912} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3435228b-ef3c-44e4-852e-aa85adc77545","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f888407f-1205-462f-ab7b-2265dc7897f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6896124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eab69634-9cfd-44ad-91d5-b62d80dcc53a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6898775} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3435228b-ef3c-44e4-852e-aa85adc77545","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3435228b-ef3c-44e4-852e-aa85adc77545","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.689593104Z"}]},"request_id":"c1b44114-b056-421f-a88e-fd1d70f09d2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.6948316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dd248a7130fa01b48443a6016830bb0e"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd248a7130fa01b48443a6016830bb0e"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"dd248a7130fa01b48443a6016830bb0e","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"8380aa0e72696edf0bd0a2566d6c9c72"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8380aa0e72696edf0bd0a2566d6c9c72"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.357587,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8380aa0e72696edf0bd0a2566d6c9c72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0930336c-8f3c-4f61-9476-1262e9c0f8a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7251267} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7fbb2d04-14fa-40ed-a8ca-cfe97935ddec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7303133} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b9f06aed-3f9e-48e8-8e28-8b2f01ac5b4f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7409382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54c779d7-a070-43f7-b9a7-1edd703b84ef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7414687} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.740902792Z"}]},"request_id":"193e7ca2-f7be-4088-b7cb-4ec86cfa9cae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7490957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8380aa0e72696edf0bd0a2566d6c9c72"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8380aa0e72696edf0bd0a2566d6c9c72"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"8380aa0e72696edf0bd0a2566d6c9c72","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"a075f54671a097c1ce36e501f06b47c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a075f54671a097c1ce36e501f06b47c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a075f54671a097c1ce36e501f06b47c4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.169354,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a075f54671a097c1ce36e501f06b47c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b705b64-fb90-4c03-9302-c6f0a641b68f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"517751d0-afbd-426b-9cbc-f7cf4fa9da95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7810273} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"185cd089-be4a-4d27-877e-f66ccbb26398","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.7884846} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b705b64-fb90-4c03-9302-c6f0a641b68f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b8de319d-773d-4ecc-a4cb-5d0f2dced06e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8043084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae29118d-91b8-4f1c-a32e-4f0eeb05f3ee","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8045926} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b705b64-fb90-4c03-9302-c6f0a641b68f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b705b64-fb90-4c03-9302-c6f0a641b68f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.804280991Z"}]},"request_id":"26e90183-3ae1-4d09-9baa-ca597afddda6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8092277} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a075f54671a097c1ce36e501f06b47c4"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a075f54671a097c1ce36e501f06b47c4"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"a075f54671a097c1ce36e501f06b47c4","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"9a334c1cff1d585c6b34150602bd1ed8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a334c1cff1d585c6b34150602bd1ed8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a334c1cff1d585c6b34150602bd1ed8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.859759,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9a334c1cff1d585c6b34150602bd1ed8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e7e11f2-6c85-40a4-a84e-836a519646a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c8a2b5e1-cfb4-4e7e-bad1-437338453d17","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.841494} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4436dc4-4c63-4c5f-8574-a48cb9225daa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8468046} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e7e11f2-6c85-40a4-a84e-836a519646a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7d0394a4-1b6e-4c3d-8834-2b59ba60acea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8575616} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"436d318e-6550-44cc-9cc7-48f895c841eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8577905} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e7e11f2-6c85-40a4-a84e-836a519646a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e7e11f2-6c85-40a4-a84e-836a519646a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.857532939Z"}]},"request_id":"a99c3370-242e-4a2f-8d75-affc8d434c74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8624916} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a334c1cff1d585c6b34150602bd1ed8"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"9a334c1cff1d585c6b34150602bd1ed8","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a334c1cff1d585c6b34150602bd1ed8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"ea3edcd7c09097bec01a1c267c23f03b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ea3edcd7c09097bec01a1c267c23f03b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ea3edcd7c09097bec01a1c267c23f03b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.962123,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ea3edcd7c09097bec01a1c267c23f03b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe350f116-725b-458a-b60e-abe32a3f4b28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d68ea2a0-59ca-4967-96ae-dceaae34c478","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.8934517} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97a81bb5-3ffb-4245-8a04-f3d1182b738a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.898893} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe350f116-725b-458a-b60e-abe32a3f4b28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"af4ec425-3bdd-4fcf-a169-9a3e3a72f605","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9160588} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"951c9471-477a-41e8-9d17-bde31e0e2743","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9167297} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe350f116-725b-458a-b60e-abe32a3f4b28","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe350f116-725b-458a-b60e-abe32a3f4b28","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.916036331Z"}]},"request_id":"a93de33a-2739-417f-8327-cb71a82bd973","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9237282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ea3edcd7c09097bec01a1c267c23f03b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea3edcd7c09097bec01a1c267c23f03b"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"ea3edcd7c09097bec01a1c267c23f03b","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"b75538a04e4d4dfd627677fde19b60fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b75538a04e4d4dfd627677fde19b60fd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b75538a04e4d4dfd627677fde19b60fd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.27979,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b75538a04e4d4dfd627677fde19b60fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55c68399-93a9-49ce-a6f3-846f19bb1c2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53185337-9113-47b5-b820-f99b4b4717da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9583097} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae847b87-e262-47d8-9968-f174ce7d38e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9658694} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55c68399-93a9-49ce-a6f3-846f19bb1c2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6491f90b-f79c-40d5-bdec-8c7c80d3328e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9790142} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6829a256-60e3-471c-840e-466dc157e1d4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9794755} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55c68399-93a9-49ce-a6f3-846f19bb1c2b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55c68399-93a9-49ce-a6f3-846f19bb1c2b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:49.978995376Z"}]},"request_id":"2a2f3cc7-d1c4-40ac-b346-ae17a2aa1be7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049589.9858606} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b75538a04e4d4dfd627677fde19b60fd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b75538a04e4d4dfd627677fde19b60fd"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"b75538a04e4d4dfd627677fde19b60fd","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE","level":"info","message":"auth send jwt","requestID":"3506b0dada4e9247cfc2661aff237632"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3506b0dada4e9247cfc2661aff237632","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3506b0dada4e9247cfc2661aff237632"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.290814,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3506b0dada4e9247cfc2661aff237632","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049589,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU4OX0.HWFVl1XCtBZjcqzUPDUywSG7XYkfcpkxzuBEYqti9mE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53637578-7abd-4593-aacd-b34b914ea1b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4e28a9e6-95d7-4b91-802b-cdf52eeaafec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.0181258} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dcb4a274-a32d-4962-a622-a940a141ab8e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.025443} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53637578-7abd-4593-aacd-b34b914ea1b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"12288cee-af28-41f3-8f35-092b662231ea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.042745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f2600ae-a66c-4245-8802-ed801de3bd3d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.0428777} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53637578-7abd-4593-aacd-b34b914ea1b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53637578-7abd-4593-aacd-b34b914ea1b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.042723085Z"}]},"request_id":"3dbce51c-19d9-4eb7-b80c-2a9477ec00ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.0497332} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3506b0dada4e9247cfc2661aff237632"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3506b0dada4e9247cfc2661aff237632"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"3506b0dada4e9247cfc2661aff237632","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"d1c2ae4ee00bc73392651650a01571d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1c2ae4ee00bc73392651650a01571d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d1c2ae4ee00bc73392651650a01571d7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.845649,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1c2ae4ee00bc73392651650a01571d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70179e3c-17ea-416c-9564-f6f610d45f20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"52538cf0-a37b-4a87-8321-89cbb0b56a4a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.0848286} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93917f72-14d9-42a6-ae10-15006d0d0eb7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.0929387} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70179e3c-17ea-416c-9564-f6f610d45f20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f9995280-1a46-4f89-b46a-628123990fd6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.1071007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57aa6fca-ef30-4455-8459-6724df62eff9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.1076076} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70179e3c-17ea-416c-9564-f6f610d45f20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70179e3c-17ea-416c-9564-f6f610d45f20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.107063916Z"}]},"request_id":"70bdcfd4-1a3e-48df-87db-d9114fb2d063","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.1159554} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d1c2ae4ee00bc73392651650a01571d7"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1c2ae4ee00bc73392651650a01571d7"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"d1c2ae4ee00bc73392651650a01571d7","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"71dcd3026406252edfbe3081ebeb8e95"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71dcd3026406252edfbe3081ebeb8e95","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"71dcd3026406252edfbe3081ebeb8e95"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.199722,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"71dcd3026406252edfbe3081ebeb8e95","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bec2964-462f-4320-b1fd-c3954b811876","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9228297b-b984-400c-bf7b-2f650361ee82","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.15375} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82a21c59-b3be-4283-81ae-77c7e3866bb4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.161139} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bec2964-462f-4320-b1fd-c3954b811876","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b27971d3-be0a-4fa0-99b9-5c8240020067","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.1794226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9822130c-c2c9-48a4-a15c-6b68019d4286","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.1795762} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bec2964-462f-4320-b1fd-c3954b811876","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bec2964-462f-4320-b1fd-c3954b811876","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.179387618Z"}]},"request_id":"e41597e7-9c49-42cb-a0d7-6d851472a7f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.186134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"71dcd3026406252edfbe3081ebeb8e95"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71dcd3026406252edfbe3081ebeb8e95"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"71dcd3026406252edfbe3081ebeb8e95","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"5046ff83a50c9b09f8ae66aed7c830c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5046ff83a50c9b09f8ae66aed7c830c2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.327685,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5046ff83a50c9b09f8ae66aed7c830c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42b5d0a4-85ad-4347-a7fa-bfaba9475675","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2236617} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f1d9cb4-2a3e-455f-ae61-91f67c9e3dc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2310266} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"417c4b67-26bc-47d2-bdfe-06fce1a031ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2439592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58b3af67-de8a-4e80-a963-7d38eba723c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2441325} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.243941151Z"}]},"request_id":"3ea84e11-9bbb-45cb-95ce-8e1bc416b34d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2499542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5046ff83a50c9b09f8ae66aed7c830c2"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"5046ff83a50c9b09f8ae66aed7c830c2","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5046ff83a50c9b09f8ae66aed7c830c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.169859,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"572b3f94-3b0b-4172-8cb2-913d42754aa5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2841246} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b77d3707-52b2-458b-bb1e-383141b20b55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.2912598} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"04e8e9d1-c763-4580-8772-607490d613b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3007941} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f9f13a0-df5a-4435-9171-ce88e32d1538","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3014405} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.300762894Z"}]},"request_id":"da48e93e-a8d9-451d-84f1-789c58f59a21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3079138} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"aec652ddbfd23e1e3a4a9360bbd006fb","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"ad3254090e661fe902ce43ecda6229d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad3254090e661fe902ce43ecda6229d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad3254090e661fe902ce43ecda6229d2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.927943,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ad3254090e661fe902ce43ecda6229d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2220d624-3d40-4472-9535-9529abf1d03b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3454416} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f67d27ba-5018-4ba1-8c43-6ba763cf4d55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.352424} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c3e30614-a2a5-4b0e-a1ea-32a817c36c95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3663807} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6775897-7204-4e55-8fcf-2ae0fb1c69b6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3668718} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.366345311Z"}]},"request_id":"935b51db-cdb4-431d-9a8d-a7831185dda5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.3732562} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad3254090e661fe902ce43ecda6229d2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad3254090e661fe902ce43ecda6229d2"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"ad3254090e661fe902ce43ecda6229d2","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"61eb9b8e0cb91896cc3df3fecda084f0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"61eb9b8e0cb91896cc3df3fecda084f0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.15513,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"61eb9b8e0cb91896cc3df3fecda084f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.243941151Z"}]},"request_id":"94250e98-7657-4749-be17-76342c975543","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.402881} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cff026e-c718-4da7-b940-08b222a14175","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.410683} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.243941151Z"}]},"request_id":"c479f23f-673d-4c8d-9d38-514d05361b5f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.4229674} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"61eb9b8e0cb91896cc3df3fecda084f0"} device-1 | {"level":"info","message":"PATCH /devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a? 200 39ms","method":"PATCH","requestID":"61eb9b8e0cb91896cc3df3fecda084f0","responseTime":39,"status":200,"url":"/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61eb9b8e0cb91896cc3df3fecda084f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"120fbfc6d165fc091c790f5f1285e95b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"120fbfc6d165fc091c790f5f1285e95b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"120fbfc6d165fc091c790f5f1285e95b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28586,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"120fbfc6d165fc091c790f5f1285e95b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"120fbfc6d165fc091c790f5f1285e95b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.300762894Z"}]},"request_id":"b1b6c824-49fb-41ba-842d-ec426f82ae79","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.4517915} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"120fbfc6d165fc091c790f5f1285e95b","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93a22a7c-bca7-4a51-85e3-30d577be960b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.459647} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"120fbfc6d165fc091c790f5f1285e95b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.300762894Z"}]},"request_id":"2d1ab3c9-0798-46d6-b019-1b165ef47d69","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.4707015} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"120fbfc6d165fc091c790f5f1285e95b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"120fbfc6d165fc091c790f5f1285e95b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"120fbfc6d165fc091c790f5f1285e95b"} device-1 | {"level":"info","message":"PATCH /devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c? 200 38ms","method":"PATCH","requestID":"120fbfc6d165fc091c790f5f1285e95b","responseTime":38,"status":200,"url":"/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"b1269eeda3388cdcd514d15ae55af99e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b1269eeda3388cdcd514d15ae55af99e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b1269eeda3388cdcd514d15ae55af99e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257803,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b1269eeda3388cdcd514d15ae55af99e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1269eeda3388cdcd514d15ae55af99e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.366345311Z"}]},"request_id":"1f9e0db9-7183-4246-bc54-d785b55865dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.4992676} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b1269eeda3388cdcd514d15ae55af99e","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d133bd2-f93b-4f20-b335-f2e3ea434d5f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.5076215} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b1269eeda3388cdcd514d15ae55af99e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.366345311Z"}]},"request_id":"c0b50e9f-0d96-42e4-a352-298188f6f3f2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.5248353} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1269eeda3388cdcd514d15ae55af99e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b1269eeda3388cdcd514d15ae55af99e"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3ab9f915-516e-424f-b06d-ba033062ac40? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1269eeda3388cdcd514d15ae55af99e"} device-1 | {"level":"info","message":"PATCH /devices/3ab9f915-516e-424f-b06d-ba033062ac40? 200 45ms","method":"PATCH","requestID":"b1269eeda3388cdcd514d15ae55af99e","responseTime":45,"status":200,"url":"/devices/3ab9f915-516e-424f-b06d-ba033062ac40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"7211d40cf83cad411209d5e2211f8c88"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7211d40cf83cad411209d5e2211f8c88"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205754,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7211d40cf83cad411209d5e2211f8c88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8713cfec-04c8-48a7-b8c0-d8611fdb539a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.243941151Z"}]},"request_id":"45784d50-b087-43e4-8368-5678bc2eeb49","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.550779} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047696,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038941,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.603126,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de661461-04bc-4f66-8b9d-8bfea1b1762b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7211d40cf83cad411209d5e2211f8c88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/de661461-04bc-4f66-8b9d-8bfea1b1762b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3435228b-ef3c-44e4-852e-aa85adc77545","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7211d40cf83cad411209d5e2211f8c88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3435228b-ef3c-44e4-852e-aa85adc77545","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7211d40cf83cad411209d5e2211f8c88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ff975b0a-af4c-46e5-89f7-3d4a9b8ce42c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.605252,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7211d40cf83cad411209d5e2211f8c88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7211d40cf83cad411209d5e2211f8c88"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7211d40cf83cad411209d5e2211f8c88"} device-1 | {"level":"info","message":"GET /devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a? 200 45ms","method":"GET","requestID":"7211d40cf83cad411209d5e2211f8c88","responseTime":45,"status":200,"url":"/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"b46635fd4f97b07949ce1083a9ac792d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b46635fd4f97b07949ce1083a9ac792d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283043,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4e7d5e-aed6-4c2c-84f7-a9217595b00c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.300762894Z"}]},"request_id":"0a19e1bb-3f88-495b-bc04-ac511939cf6a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.605504} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169462,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084196,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.345937,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b705b64-fb90-4c03-9302-c6f0a641b68f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b705b64-fb90-4c03-9302-c6f0a641b68f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e7e11f2-6c85-40a4-a84e-836a519646a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3e7e11f2-6c85-40a4-a84e-836a519646a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e350f116-725b-458a-b60e-abe32a3f4b28","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e350f116-725b-458a-b60e-abe32a3f4b28","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.085504,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55c68399-93a9-49ce-a6f3-846f19bb1c2b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/55c68399-93a9-49ce-a6f3-846f19bb1c2b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47402","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.353622,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47402","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.397441,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b46635fd4f97b07949ce1083a9ac792d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b46635fd4f97b07949ce1083a9ac792d"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b46635fd4f97b07949ce1083a9ac792d"} device-1 | {"level":"info","message":"GET /devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c? 200 60ms","method":"GET","requestID":"b46635fd4f97b07949ce1083a9ac792d","responseTime":60,"status":200,"url":"/devices/5c4e7d5e-aed6-4c2c-84f7-a9217595b00c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"aa1c8938e083c1790432d2372cf2c709"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa1c8938e083c1790432d2372cf2c709"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183419,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa1c8938e083c1790432d2372cf2c709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ab9f915-516e-424f-b06d-ba033062ac40","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ab9f915-516e-424f-b06d-ba033062ac40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.366345311Z"}]},"request_id":"d2194230-2b69-40fc-a2f0-f5dee67901b8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.6691065} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.764769,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.981614,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130471,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53637578-7abd-4593-aacd-b34b914ea1b4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa1c8938e083c1790432d2372cf2c709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53637578-7abd-4593-aacd-b34b914ea1b4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70179e3c-17ea-416c-9564-f6f610d45f20","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa1c8938e083c1790432d2372cf2c709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70179e3c-17ea-416c-9564-f6f610d45f20","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bec2964-462f-4320-b1fd-c3954b811876","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa1c8938e083c1790432d2372cf2c709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bec2964-462f-4320-b1fd-c3954b811876","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47386","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.499182,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa1c8938e083c1790432d2372cf2c709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8713cfec-04c8-48a7-b8c0-d8611fdb539a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa1c8938e083c1790432d2372cf2c709"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ab9f915-516e-424f-b06d-ba033062ac40? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa1c8938e083c1790432d2372cf2c709"} device-1 | {"level":"info","message":"GET /devices/3ab9f915-516e-424f-b06d-ba033062ac40? 200 37ms","method":"GET","requestID":"aa1c8938e083c1790432d2372cf2c709","responseTime":37,"status":200,"url":"/devices/3ab9f915-516e-424f-b06d-ba033062ac40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"8f330420815e7a23fa8c9bd8512c7a1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8f330420815e7a23fa8c9bd8512c7a1a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.274198,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8f330420815e7a23fa8c9bd8512c7a1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f221f8b4-e882-4721-a3db-552fbfb9ec89","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7303002} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03ba1cee-d173-467f-8426-7fab3f64d3b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7381997} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"37fa43da-73c8-45d6-81f4-b3ba72863e31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7514172} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e6cbcc54-2ed6-4252-886e-df0d005371e5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7517536} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"9420f328-43fe-4c83-b96c-e3916b683ef4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7590222} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8f330420815e7a23fa8c9bd8512c7a1a"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"8f330420815e7a23fa8c9bd8512c7a1a","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f330420815e7a23fa8c9bd8512c7a1a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"9cb3598152a6737b2f25bac8c28b56d4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9cb3598152a6737b2f25bac8c28b56d4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9cb3598152a6737b2f25bac8c28b56d4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.012516,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9cb3598152a6737b2f25bac8c28b56d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ad096d53-b79a-4496-8647-eab5e0819b11","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.7967029} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed8f1976-79e5-46c3-9fde-2296aa1b0aab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.805941} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6a40f3f1-68a3-43cb-ade7-b2edb6f855ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8240564} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15ae2b64-d14f-443c-8bf1-fda6ac91cb9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.824204} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.824018240Z"}]},"request_id":"8f79659f-ba2c-4c0c-a178-0d58a867780c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8319542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9cb3598152a6737b2f25bac8c28b56d4"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9cb3598152a6737b2f25bac8c28b56d4"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"9cb3598152a6737b2f25bac8c28b56d4","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE","level":"info","message":"auth send jwt","requestID":"076cc1479132060ce359900b92099133"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"076cc1479132060ce359900b92099133","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"076cc1479132060ce359900b92099133"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.034458,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"076cc1479132060ce359900b92099133","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049590,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5MH0.NYBigQOLGAEKGD2vlkaB6Rq8SXWMnpD4FFB54VjhdNE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d94d09ba-4800-41b2-9ffc-20e7ef8ceda9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8653817} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f9eb9e8-7b39-4e57-8c36-546014528fb6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8738787} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8938c7a4-98d4-4095-b402-e4799ed363e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8870983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"361184e7-98fc-4ea2-87aa-abb0374025e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8875604} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"dab45c22-9554-4d8c-a9ba-fd06d9b2dd7e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049590.8949037} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"076cc1479132060ce359900b92099133"} gateway-1 | {"time_local":"22/Sep/2024:23:59:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"076cc1479132060ce359900b92099133"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"076cc1479132060ce359900b92099133","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93978f8d3549b7e0c974cb51b411e978","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"93978f8d3549b7e0c974cb51b411e978","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a7477676-64e8-4d00-9945-e128f16adcad/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":"93978f8d3549b7e0c974cb51b411e978"} device-1 | {"level":"info","message":"OPTIONS /devices/a7477676-64e8-4d00-9945-e128f16adcad/websocket 200 1ms","method":"OPTIONS","requestID":"93978f8d3549b7e0c974cb51b411e978","responseTime":1,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo","level":"info","message":"auth send jwt","requestID":"54d0d34c401be8f49e248adfa4c831e6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54d0d34c401be8f49e248adfa4c831e6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"54d0d34c401be8f49e248adfa4c831e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ecc9a5e3a731aa620bbb57754c524ba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:52Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9ecc9a5e3a731aa620bbb57754c524ba","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087016,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:52Z"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/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":"9ecc9a5e3a731aa620bbb57754c524ba"} device-1 | {"level":"info","message":"OPTIONS /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/websocket 200 0ms","method":"OPTIONS","requestID":"9ecc9a5e3a731aa620bbb57754c524ba","responseTime":0,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"54d0d34c401be8f49e248adfa4c831e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049592,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54d0d34c401be8f49e248adfa4c831e6","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo","level":"info","message":"auth send jwt","requestID":"d48495bc397db8d51b56b689982e50ce"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d48495bc397db8d51b56b689982e50ce","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d48495bc397db8d51b56b689982e50ce"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884263,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d48495bc397db8d51b56b689982e50ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049592,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d48495bc397db8d51b56b689982e50ce","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"54d0d34c401be8f49e248adfa4c831e6"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/websocket 200 23ms","method":"POST","requestID":"54d0d34c401be8f49e248adfa4c831e6","responseTime":23,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/websocket"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"54d0d34c401be8f49e248adfa4c831e6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d48495bc397db8d51b56b689982e50ce"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","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":"d48495bc397db8d51b56b689982e50ce"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/websocket 200 19ms","method":"POST","requestID":"d48495bc397db8d51b56b689982e50ce","responseTime":19,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c59e96d5b71280817c9f1da6cd0ae27","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6c59e96d5b71280817c9f1da6cd0ae27","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a7477676-64e8-4d00-9945-e128f16adcad? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"6c59e96d5b71280817c9f1da6cd0ae27"} device-1 | {"level":"info","message":"OPTIONS /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 1ms","method":"OPTIONS","requestID":"6c59e96d5b71280817c9f1da6cd0ae27","responseTime":1,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4bbdb5539253187e1fb7366f5bf5614a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4bbdb5539253187e1fb7366f5bf5614a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? 200 1ms","method":"OPTIONS","requestID":"4bbdb5539253187e1fb7366f5bf5614a","responseTime":1,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"4bbdb5539253187e1fb7366f5bf5614a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo","level":"info","message":"auth send jwt","requestID":"5534f32b3a295069f8bc8f0d044aa2c8"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5534f32b3a295069f8bc8f0d044aa2c8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:52Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo","level":"info","message":"auth send jwt","requestID":"e3cadb8532c84a9ace449ec997c51c06"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190604,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:52Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e3cadb8532c84a9ace449ec997c51c06","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5534f32b3a295069f8bc8f0d044aa2c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049592,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e3cadb8532c84a9ace449ec997c51c06"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701026,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3cadb8532c84a9ace449ec997c51c06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049592,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e3cadb8532c84a9ace449ec997c51c06","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"52d73129-47c9-446f-a711-bf66598f119c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.956425} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"b0dc68a9-345f-47c2-8763-5698c4c2bd01","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.9592748} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3cadb8532c84a9ace449ec997c51c06","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"223df125-7c99-45b1-bff2-c7fe14094121","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.962326} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67a685c1-ff86-4aae-b298-f9139e6f32b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.9657562} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e3cadb8532c84a9ace449ec997c51c06","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"361224f9-7bfd-4a1e-b7e9-895c8d726a19","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.9706564} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e3cadb8532c84a9ace449ec997c51c06","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e3cadb8532c84a9ace449ec997c51c06"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.032","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":"e3cadb8532c84a9ace449ec997c51c06"} device-1 | {"level":"info","message":"PATCH /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? 200 28ms","method":"PATCH","requestID":"e3cadb8532c84a9ace449ec997c51c06","responseTime":28,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"cc3a42fa-4b4a-4a7c-9856-e3cbc3288253","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049592.9835138} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5534f32b3a295069f8bc8f0d044aa2c8"} gateway-1 | {"time_local":"22/Sep/2024:23:59:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a7477676-64e8-4d00-9945-e128f16adcad? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.049","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":"5534f32b3a295069f8bc8f0d044aa2c8"} device-1 | {"level":"info","message":"PATCH /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 43ms","method":"PATCH","requestID":"5534f32b3a295069f8bc8f0d044aa2c8","responseTime":43,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo","level":"info","message":"auth send jwt","requestID":"5dba4df1ac1e3a300c81b574baa92da2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5dba4df1ac1e3a300c81b574baa92da2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5dba4df1ac1e3a300c81b574baa92da2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68812,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5dba4df1ac1e3a300c81b574baa92da2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049592,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Mn0.iVIaeMwMw79hJOLzxV7BJ7kEibSJP8XX9aQGs9MaCwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5dba4df1ac1e3a300c81b574baa92da2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"4988b6a0-1c60-428e-a557-c0ca515ae2fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.00559} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5dba4df1ac1e3a300c81b574baa92da2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5dba4df1ac1e3a300c81b574baa92da2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5dba4df1ac1e3a300c81b574baa92da2"} device-1 | {"level":"info","message":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 14ms","method":"GET","requestID":"5dba4df1ac1e3a300c81b574baa92da2","responseTime":14,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"87a6933e359fc9a59f76b679bad1013e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87a6933e359fc9a59f76b679bad1013e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87a6933e359fc9a59f76b679bad1013e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.098478,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"87a6933e359fc9a59f76b679bad1013e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87a6933e359fc9a59f76b679bad1013e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to run experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to book experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully booked experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c28b5860-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638958,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a21c4fa8-6375-4e5a-988e-b223479067f8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a21c4fa8-6375-4e5a-988e-b223479067f8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.588068,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c28b5860-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c28b5860-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa21c4fa8-6375-4e5a-988e-b223479067f8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.824018240Z"}]},"request_id":"fd8e439c-7f29-4ed6-a301-627c1b1e8a0d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.068547} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"4201687c-bd2b-4d01-92ee-76c36124639d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.0697355} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c28b5860-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c28b5860-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 15ms","method":"GET","requestID":"c28b5860-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.060432,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a21c4fa8-6375-4e5a-988e-b223479067f8? 200 21ms","method":"GET","requestID":"c28b0a40-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a21c4fa8-6375-4e5a-988e-b223479067f8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Setting up experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully set up experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c295dfb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2962dd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c29654e0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully running experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698538,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c295dfb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c295dfb0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.674313,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2962dd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c2962dd0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.482298,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50d96f78-69fa-4323-911f-762afbccfcfc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.139952} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c29654e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","rebac_allow":false,"scope_allow":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":"c29654e0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c29654e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling 200 11ms","method":"POST","requestID":"c29654e0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"61a1e2f5-bbf8-4b85-bfb3-9af397094791","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1453986} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c295dfb0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"67277474-5330-41db-8d0a-c7aca2000c92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1464617} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c2962dd0-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2989ed0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c295dfb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? 200 22ms","method":"GET","requestID":"c295dfb0-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2962dd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 21ms","method":"GET","requestID":"c2962dd0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc0e2595-17b1-447e-a8b4-701023a28383","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.155412} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c299d750-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.939829,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2989ed0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","rebac_allow":false,"scope_allow":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":"c2989ed0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1451f31c-7560-4c7a-a50d-fd339306afa0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1451f31c-7560-4c7a-a50d-fd339306afa0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"14a60a8a-60c2-4243-9e85-1ca66b60b7f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.158525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef916d68-f26d-49a4-a209-c8ac4e2956dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1586614} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2989ed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling 200 13ms","method":"POST","requestID":"c2989ed0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"87a6933e359fc9a59f76b679bad1013e","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50729a4e-f6bd-44fe-8109-8cad612beedb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1632617} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.540077,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c299d750-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","rebac_allow":false,"scope_allow":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":"c299d750-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c299d750-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling 200 10ms","method":"POST","requestID":"c299d750-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87a6933e359fc9a59f76b679bad1013e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c29c4850-793e-11ef-9733-5750b05365a5"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"87a6933e359fc9a59f76b679bad1013e","responseTime":157,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ea6fd39-0dae-4643-8ed3-23f5f8a94b3a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1774862} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.127389,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"677a0a41cf3bdadde6ffae5353b86954"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"677a0a41cf3bdadde6ffae5353b86954","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c29c4850-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","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 called","requestID":"677a0a41cf3bdadde6ffae5353b86954"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c29c4850-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6823,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c29c4850-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"677a0a41cf3bdadde6ffae5353b86954","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling 200 9ms","method":"POST","requestID":"c29c4850-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"677a0a41cf3bdadde6ffae5353b86954","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c29e4420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c29e6b30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"4c0b63e5-558e-41e2-a1c9-36545b49b16b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1890743} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"677a0a41cf3bdadde6ffae5353b86954","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675405,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.548683,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c29e4420-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c29e4420-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c29e6b30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c29e6b30-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"677a0a41cf3bdadde6ffae5353b86954"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.751390040Z"}]},"request_id":"80f67be4-f53d-4a39-9a2d-e86783aebf6f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1952133} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"677a0a41cf3bdadde6ffae5353b86954"} device-1 | {"level":"info","message":"GET /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? 200 17ms","method":"GET","requestID":"677a0a41cf3bdadde6ffae5353b86954","responseTime":17,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c29e4420-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"b9cdf798-3adb-465f-b125-fae383d65a6a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.1961284} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c29e6b30-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"b7b687e81d172529d3c7e00f831a6050"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c29e4420-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b7b687e81d172529d3c7e00f831a6050","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/27caf92a-8853-4443-abcd-e70ab76f1b91? 200 15ms","method":"GET","requestID":"c29e4420-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c29e6b30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 14ms","method":"GET","requestID":"c29e6b30-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7b687e81d172529d3c7e00f831a6050"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Building connection plan","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"60ff9f81-fc03-485b-b167-624b9edca0c5"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"3e32ba90-29d9-4d29-a667-a566b7243599"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"32d8a62a-c859-47d9-8278-1213ec3cbe09"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87a6933e359fc9a59f76b679bad1013e"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87a6933e359fc9a59f76b679bad1013e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69402,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7b687e81d172529d3c7e00f831a6050","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b7b687e81d172529d3c7e00f831a6050","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.633159,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2a12a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:50.887077414Z"}]},"request_id":"0a4eb31c-555e-426c-a66c-e1b2b5931f3e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.2101953} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7b687e81d172529d3c7e00f831a6050","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7b687e81d172529d3c7e00f831a6050"} device-1 | {"level":"info","message":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? 200 13ms","method":"GET","requestID":"b7b687e81d172529d3c7e00f831a6050","responseTime":13,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7477676-64e8-4d00-9945-e128f16adcad? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7b687e81d172529d3c7e00f831a6050"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"56488cc9-69a4-4588-9cbc-03f4946a9bf3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.2198153} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5a48d21-31db-4b23-9d02-89c04772fb6b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.2200103} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1'","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1'","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c2a12a50-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87a6933e359fc9a59f76b679bad1013e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2a9b5d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed6e0eb9-a95c-4807-a237-6c31b617e2cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.265676} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.336658,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2a9b5d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2a9b5d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2a9b5d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling 200 12ms","method":"POST","requestID":"c2a9b5d0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2abd8b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c435c13b-684b-4298-a771-df5b456bd928","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.2814016} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.878678,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2abd8b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","rebac_allow":false,"scope_allow":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":"c2abd8b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2abd8b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling 200 15ms","method":"POST","requestID":"c2abd8b0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling"} device-1 | {"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8444689553732046881 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:Y7Ev\r\na=ice-pwd:OZ23MkWVSt7FdNmdzr9B708V\r\na=ice-options:trickle\r\na=fingerprint:sha-256 65:64:75:A5:77:9C:6E:2E:C6:49:FA:16:5A:61:33:E9:04:3D:1F:68:4A:EE:8C:46:88:61:BD:85:21:17:02:BE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2342853562706436416 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:Yewg\r\na=ice-pwd:kLpvYlmnrG++5ToWvlm3JGQ2\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E5:7D:18:6E:90:B9:4B:AF:D1:40:BC:DB:B7:8E:9F:C4:8B:20:2A:E2:7E:A0:68:8B:34:4F:9D:7B:1A:07:FB:96\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3982085594 1 udp 2113937151 0d0767b1-314b-4173-9cf6-bc3b71abbd0d.local 58962 typ host generation 0 ufrag Yewg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2121428169 1 udp 1677729535 141.24.211.56 58962 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Yewg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a7477676-64e8-4d00-9945-e128f16adcad","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/a7477676-64e8-4d00-9945-e128f16adcad'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad'"} device-1 | {"content":{"candidate":"candidate:152961874 1 udp 2113937151 5fa2a1fe-4dd9-4a7a-840d-7bda0178d873.local 56747 typ host generation 0 ufrag Y7Ev network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2368956717 1 udp 1677729535 141.24.211.56 56747 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Y7Ev network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","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/27caf92a-8853-4443-abcd-e70ab76f1b91'"} device-1 | {"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a7477676-64e8-4d00-9945-e128f16adcad","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/24900e1f-667b-4f87-af67-3c9533184fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24900e1f-667b-4f87-af67-3c9533184fd1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e116ad7fac568201bf41ac8f5ef3f838","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e116ad7fac568201bf41ac8f5ef3f838","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"}}},"level":"info","message":"received a callback","requestID":"e116ad7fac568201bf41ac8f5ef3f838"} device-1 | {"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"e116ad7fac568201bf41ac8f5ef3f838","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"e116ad7fac568201bf41ac8f5ef3f838"} device-1 | {"device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"24900e1f-667b-4f87-af67-3c9533184fd1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"24900e1f-667b-4f87-af67-3c9533184fd1","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/24900e1f-667b-4f87-af67-3c9533184fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24900e1f-667b-4f87-af67-3c9533184fd1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ab19728717382141941bf62eddcf82a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"7ab19728717382141941bf62eddcf82a","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"}}},"level":"info","message":"received a callback","requestID":"7ab19728717382141941bf62eddcf82a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c2bb9020-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24900e1f-667b-4f87-af67-3c9533184fd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94e98101-7382-49c6-9744-b2f3242c7a38","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.3825893} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.078002,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2bb9020-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2bb9020-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c2bb9020-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1 200 8ms","method":"GET","requestID":"c2bb9020-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"7ab19728717382141941bf62eddcf82a","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ab19728717382141941bf62eddcf82a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2bfd5e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"617d8eb3-2401-468e-89ca-0dc3a415f240","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.4107664} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.130432,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2bfd5e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2bfd5e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2bfd5e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling 200 8ms","method":"POST","requestID":"c2bfd5e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2c1aaa0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7dec8693-06c8-46de-b165-664c1219f6c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.4231443} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.15193,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2c1aaa0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2c1aaa0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2c1aaa0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling 200 8ms","method":"POST","requestID":"c2c1aaa0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"c23021defdffd538d0d58e08c217d94b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c23021defdffd538d0d58e08c217d94b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","requestID":"c23021defdffd538d0d58e08c217d94b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.556828,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c23021defdffd538d0d58e08c217d94b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c23021defdffd538d0d58e08c217d94b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","requestID":"c23021defdffd538d0d58e08c217d94b"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c23021defdffd538d0d58e08c217d94b"} experiment-1 | {"level":"info","message":"GET /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0 200 12ms","method":"GET","requestID":"c23021defdffd538d0d58e08c217d94b","responseTime":12,"status":200,"url":"/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"1e74896baff6c8857a20d651ba88aee2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1e74896baff6c8857a20d651ba88aee2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","requestID":"1e74896baff6c8857a20d651ba88aee2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.70008,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1e74896baff6c8857a20d651ba88aee2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e74896baff6c8857a20d651ba88aee2","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Attempting to finish experiment","requestID":"1e74896baff6c8857a20d651ba88aee2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c2c9e800-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.17439,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2c9e800-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2c9e800-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","device":"a7477676-64e8-4d00-9945-e128f16adcad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1","device":"27caf92a-8853-4443-abcd-e70ab76f1b91","deviceName":"Internal Test Device","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/24900e1f-667b-4f87-af67-3c9533184fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24900e1f-667b-4f87-af67-3c9533184fd1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24900e1f-667b-4f87-af67-3c9533184fd1': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24900e1f-667b-4f87-af67-3c9533184fd1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"bd762099-fe0e-4887-a545-35d8cb05b510","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.4869866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7eb70e91-02ea-4f9a-a768-d050f4ca3ce5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.4872448} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c2c9e800-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e769b28626e5320f9cf95560d96d7f79","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e769b28626e5320f9cf95560d96d7f79","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"}}},"level":"info","message":"received a callback","requestID":"e769b28626e5320f9cf95560d96d7f79"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ddf9a3825c66ee7f50403eca5d39d062","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ddf9a3825c66ee7f50403eca5d39d062","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"}}},"level":"info","message":"received a callback","requestID":"ddf9a3825c66ee7f50403eca5d39d062"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c2c9e800-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1 204 33ms","method":"DELETE","requestID":"c2c9e800-793e-11ef-9733-5750b05365a5","responseTime":33,"status":204,"url":"/peerconnections/24900e1f-667b-4f87-af67-3c9533184fd1"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"},"level":"info","message":"Successfully finished experiment","requestID":"1e74896baff6c8857a20d651ba88aee2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2d113f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7477676-64e8-4d00-9945-e128f16adcad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bb78705-24e7-46ee-a7da-c82171bd3548","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.5245647} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.600198,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2d113f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2d113f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2d113f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling 200 8ms","method":"POST","requestID":"c2d113f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/a7477676-64e8-4d00-9945-e128f16adcad/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1451f31c-7560-4c7a-a50d-fd339306afa0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1451f31c-7560-4c7a-a50d-fd339306afa0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0c22cfc7-658b-483d-be2f-87c35bc4157a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.530711} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2d2c1a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2631531-95be-4b40-a230-2c94bfafbaf2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.531058} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1e74896baff6c8857a20d651ba88aee2","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27caf92a-8853-4443-abcd-e70ab76f1b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1cbec0f8-38cb-4048-ae73-cf90e2ead572","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.535371} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.237548,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c2d2c1a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2d2c1a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2d2c1a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling 200 9ms","method":"POST","requestID":"c2d2c1a0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/27caf92a-8853-4443-abcd-e70ab76f1b91/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0","requestID":"1e74896baff6c8857a20d651ba88aee2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e74896baff6c8857a20d651ba88aee2"} experiment-1 | {"level":"info","message":"DELETE /experiments/1451f31c-7560-4c7a-a50d-fd339306afa0 204 131ms","method":"DELETE","requestID":"1e74896baff6c8857a20d651ba88aee2","responseTime":131,"status":204,"url":"/experiments/1451f31c-7560-4c7a-a50d-fd339306afa0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"e769b28626e5320f9cf95560d96d7f79","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"e769b28626e5320f9cf95560d96d7f79"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"ddf9a3825c66ee7f50403eca5d39d062","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59: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.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"ddf9a3825c66ee7f50403eca5d39d062"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"271affd9560ce44487c1d1526228146a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"271affd9560ce44487c1d1526228146a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"271affd9560ce44487c1d1526228146a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"0.697","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":"5cccfb6db659f95a5f4c8aabdcb0b822"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.686","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":"160c9f4c9ae6422b8b7e2631a430019d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.80495,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"271affd9560ce44487c1d1526228146a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/27caf92a-8853-4443-abcd-e70ab76f1b91' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a7477676-64e8-4d00-9945-e128f16adcad' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53e88470-89c8-42a0-8166-e23598fa59c1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.617507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45aaf053-1e5a-4714-bae5-aa1d3dd02e30","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6221232} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9adccbfd-1631-4a48-9d0b-94ddb756c7e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.634064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddcebf49-682d-409d-b931-454614cce5ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6342626} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"286da54b-1a39-48b2-ac0f-eb5e8f6cab59","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6380548} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"271affd9560ce44487c1d1526228146a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"271affd9560ce44487c1d1526228146a","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"271affd9560ce44487c1d1526228146a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8","level":"info","message":"auth send jwt","requestID":"6512ddbe04dac6b3b655b925bf01d221"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6512ddbe04dac6b3b655b925bf01d221","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6512ddbe04dac6b3b655b925bf01d221"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.961862,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6512ddbe04dac6b3b655b925bf01d221","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049593,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5M30.dHuR0mB69ZVTRPZUhF6WwBHYqTawgxcX0k-6cwP7zi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3aa9ba52-3a50-4297-8295-5de4e6d764bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6621788} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eda3195c-3277-4a68-b4ae-cc218c6d4bbd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6664362} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8438950d-6e03-4121-8c61-e95ba9fc2446","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6821766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b0d020a-a4f2-41c5-9c5e-275b2619612c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6823616} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"60fa4ee2-c26f-4242-b744-be02c17df941","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049593.6878233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6512ddbe04dac6b3b655b925bf01d221"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"6512ddbe04dac6b3b655b925bf01d221","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6512ddbe04dac6b3b655b925bf01d221"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NH0.agpXgfQrrNLrBKYc2Q-9egEzpRIwxfWE8gXlgqiQOEw","level":"info","message":"auth send jwt","requestID":"23d4ced3152c23438dde38f0033445a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"23d4ced3152c23438dde38f0033445a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"23d4ced3152c23438dde38f0033445a8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819983,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"23d4ced3152c23438dde38f0033445a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049594,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NH0.agpXgfQrrNLrBKYc2Q-9egEzpRIwxfWE8gXlgqiQOEw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23d4ced3152c23438dde38f0033445a8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"32a7c9a1-c59f-4092-9703-b353ac063f0f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049594.175517} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23d4ced3152c23438dde38f0033445a8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5e200b3-7bba-47ca-932c-55a2a688ffbf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049594.1826956} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"23d4ced3152c23438dde38f0033445a8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"cb9bc145-eb51-4cf5-8245-b39449b68e57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049594.195206} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23d4ced3152c23438dde38f0033445a8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"23d4ced3152c23438dde38f0033445a8"} device-1 | {"level":"info","message":"PATCH /devices/74bb3004-5256-4fc7-baff-480c7809d63a 200 37ms","method":"PATCH","requestID":"23d4ced3152c23438dde38f0033445a8","responseTime":37,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a"} gateway-1 | {"time_local":"22/Sep/2024:23:59:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/74bb3004-5256-4fc7-baff-480c7809d63a HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"23d4ced3152c23438dde38f0033445a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NH0.agpXgfQrrNLrBKYc2Q-9egEzpRIwxfWE8gXlgqiQOEw","level":"info","message":"auth send jwt","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168983,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2be29f1439fb8fc78b2ddd5831d6edb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049594,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NH0.agpXgfQrrNLrBKYc2Q-9egEzpRIwxfWE8gXlgqiQOEw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9"} gateway-1 | {"time_local":"22/Sep/2024:23:59:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/websocket 200 20ms","method":"POST","requestID":"2be29f1439fb8fc78b2ddd5831d6edb9","responseTime":20,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"90197a52157bc678b18bd27051a5520f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"90197a52157bc678b18bd27051a5520f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/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":"90197a52157bc678b18bd27051a5520f"} device-1 | {"level":"info","message":"OPTIONS /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/websocket 200 2ms","method":"OPTIONS","requestID":"90197a52157bc678b18bd27051a5520f","responseTime":2,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk","level":"info","message":"auth send jwt","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232245,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2"} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/websocket 200 24ms","method":"POST","requestID":"d7e5cd6b86cdf9eb7efd5d9c54427de2","responseTime":24,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b45c107b3801d7a0c09660c24d24632d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b45c107b3801d7a0c09660c24d24632d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"b45c107b3801d7a0c09660c24d24632d"} device-1 | {"level":"info","message":"OPTIONS /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 1ms","method":"OPTIONS","requestID":"b45c107b3801d7a0c09660c24d24632d","responseTime":1,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk","level":"info","message":"auth send jwt","requestID":"061c1bd032ce0b6693957c02b6315464"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"061c1bd032ce0b6693957c02b6315464","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"061c1bd032ce0b6693957c02b6315464"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.318004,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"061c1bd032ce0b6693957c02b6315464","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"061c1bd032ce0b6693957c02b6315464","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"50bd3b9d-97b0-4585-9f44-afb1e893c359","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.7938442} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"061c1bd032ce0b6693957c02b6315464","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe91a818-6407-4d36-a670-9d609bc60e3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.8015897} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"061c1bd032ce0b6693957c02b6315464","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"040f69ee-92b3-4889-8e52-b2c274e568c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.8139877} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"061c1bd032ce0b6693957c02b6315464","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"061c1bd032ce0b6693957c02b6315464"} device-1 | {"level":"info","message":"PATCH /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 39ms","method":"PATCH","requestID":"061c1bd032ce0b6693957c02b6315464","responseTime":39,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"061c1bd032ce0b6693957c02b6315464"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk","level":"info","message":"auth send jwt","requestID":"794de79cfd2deb1994555e75f1af4f76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"794de79cfd2deb1994555e75f1af4f76","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"794de79cfd2deb1994555e75f1af4f76"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112261,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"794de79cfd2deb1994555e75f1af4f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"794de79cfd2deb1994555e75f1af4f76","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"96c2e3e1-7fc8-45a5-b95e-6168cda99aa6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.8431194} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"794de79cfd2deb1994555e75f1af4f76","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"794de79cfd2deb1994555e75f1af4f76"} device-1 | {"level":"info","message":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? 200 20ms","method":"GET","requestID":"794de79cfd2deb1994555e75f1af4f76","responseTime":20,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"794de79cfd2deb1994555e75f1af4f76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk","level":"info","message":"auth send jwt","requestID":"eb9e1810b066597dcdea09f54e5622b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eb9e1810b066597dcdea09f54e5622b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb9e1810b066597dcdea09f54e5622b7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276693,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eb9e1810b066597dcdea09f54e5622b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eb9e1810b066597dcdea09f54e5622b7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"3fe495ef-6c20-4cbc-9cac-0212d76b63c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.8724327} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"eb9e1810b066597dcdea09f54e5622b7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb9e1810b066597dcdea09f54e5622b7"} gateway-1 | {"time_local":"22/Sep/2024:23:59:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb9e1810b066597dcdea09f54e5622b7"} device-1 | {"level":"info","message":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 19ms","method":"GET","requestID":"eb9e1810b066597dcdea09f54e5622b7","responseTime":19,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk","level":"info","message":"auth send jwt","requestID":"89068bf5076d42fab47b1616d501f1a5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"89068bf5076d42fab47b1616d501f1a5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"89068bf5076d42fab47b1616d501f1a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.787885,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"89068bf5076d42fab47b1616d501f1a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"89068bf5076d42fab47b1616d501f1a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to run experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to book experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully booked experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4420910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4423020-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089755,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c4420910-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4420910-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.92929,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c4423020-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4423020-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"99b45474-7ea0-4ef0-88e0-13f5c9dd780e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.9481335} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4420910-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"f45862fd-9e2c-43a4-b5f2-15bd9d10709e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049595.9498904} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c4423020-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4420910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? 200 23ms","method":"GET","requestID":"c4420910-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4423020-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 23ms","method":"GET","requestID":"c4423020-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Setting up experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully locked booking for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to update booking for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully updated booking for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully set up experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c44f0160-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c44f4f80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c44f9da0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully running experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802672,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c44f0160-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c44f0160-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.648017,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c44f4f80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c44f4f80-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.66955,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a594910-17f5-46f6-a900-718d579f9935","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0347915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"18f6809d-0550-4cf0-ad7d-33a5c7c4ff67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0383162} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c44f9da0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","rebac_allow":false,"scope_allow":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":"c44f9da0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"57821830-cd20-49d4-a599-9254a5113214","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0446455} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c44f9da0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"c44f0160-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling 200 23ms","method":"POST","requestID":"c44f9da0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"c44f4f80-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F602f4ac8-3950-4f8a-ae2f-cea9f4181287#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F602f4ac8-3950-4f8a-ae2f-cea9f4181287","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"01abf364-5d67-4971-bf78-9ee84230247c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0485597} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08f2631b-f981-468c-877a-3a0ad899923e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0486684} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"89068bf5076d42fab47b1616d501f1a5","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c453e360-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c44f0160-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} device-1 | {"level":"info","message":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? 200 37ms","method":"GET","requestID":"c44f0160-793e-11ef-9733-5750b05365a5","responseTime":37,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c44f4f80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 36ms","method":"GET","requestID":"c44f4f80-793e-11ef-9733-5750b05365a5","responseTime":36,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"766367b1-f718-4c02-a3b7-458d416c7b38","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.060983} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.941996,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c453e360-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","rebac_allow":false,"scope_allow":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":"c453e360-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"89068bf5076d42fab47b1616d501f1a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c455df30-793e-11ef-9733-5750b05365a5"} gateway-1 | {"time_local":"22/Sep/2024:23:59:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 179ms","method":"POST","requestID":"89068bf5076d42fab47b1616d501f1a5","responseTime":179,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c453e360-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling 200 17ms","method":"POST","requestID":"c453e360-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"172879d2-2882-4a40-b3ed-245e7519a95b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.0730703} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.273763,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Nn0.3FXK6_k1S20XWMSXTpuweOd6V6yqguV7m5mTPT3F8xs","level":"info","message":"auth send jwt","requestID":"1e54c1f51dea6571481590270126711e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c455df30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","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":"1e54c1f51dea6571481590270126711e","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c455df30-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e54c1f51dea6571481590270126711e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717884,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c455df30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling 200 12ms","method":"POST","requestID":"c455df30-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1e54c1f51dea6571481590270126711e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049596,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Nn0.3FXK6_k1S20XWMSXTpuweOd6V6yqguV7m5mTPT3F8xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e54c1f51dea6571481590270126711e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4582920-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"c97c2197-5188-4c26-a06a-6548dc7aa32a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.084096} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e54c1f51dea6571481590270126711e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74f6565f-b93d-4b7e-9730-7e20d8b67f6e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.087417} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.508568,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e54c1f51dea6571481590270126711e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c4582920-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","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":"22/Sep/2024:23:59:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e54c1f51dea6571481590270126711e"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4582920-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? 200 15ms","method":"GET","requestID":"1e54c1f51dea6571481590270126711e","responseTime":15,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4582920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling 200 10ms","method":"POST","requestID":"c4582920-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Nn0.3FXK6_k1S20XWMSXTpuweOd6V6yqguV7m5mTPT3F8xs","level":"info","message":"auth send jwt","requestID":"683cd17b643c9e02b20e82cf4f542610"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"683cd17b643c9e02b20e82cf4f542610","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c45a24f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c45a4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"683cd17b643c9e02b20e82cf4f542610"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655469,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c45a24f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c45a24f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58740","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870005,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:47382","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705624,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c45a4c00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c45a4c00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"683cd17b643c9e02b20e82cf4f542610","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049596,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5Nn0.3FXK6_k1S20XWMSXTpuweOd6V6yqguV7m5mTPT3F8xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"683cd17b643c9e02b20e82cf4f542610","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.634042506Z"}]},"request_id":"230dde93-06c1-4f24-acc2-2cd9a4d950d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1066132} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"07039b8c-5c9f-4299-8e48-817e186e0b10","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.107792} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c45a24f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:53.682155832Z"}]},"request_id":"fc7b6660-e77c-46f4-9c1a-93dc3921ab32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1092308} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c45a4c00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"683cd17b643c9e02b20e82cf4f542610","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c45a4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 21ms","method":"GET","requestID":"c45a4c00-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c45a24f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/74bb3004-5256-4fc7-baff-480c7809d63a? 200 23ms","method":"GET","requestID":"c45a24f0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"683cd17b643c9e02b20e82cf4f542610"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Building connection plan","requestID":"89068bf5076d42fab47b1616d501f1a5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"2e010be9-6a2b-4af4-b0f1-67cf89a75274"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"1e17629a-661e-463f-aa8e-b9ec67f5e07d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b8238ce5-43ee-4130-8285-4618d2e084e2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"89068bf5076d42fab47b1616d501f1a5"} gateway-1 | {"time_local":"22/Sep/2024:23:59:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"683cd17b643c9e02b20e82cf4f542610"} device-1 | {"level":"info","message":"GET /devices/70b5a487-9ec4-484b-bd9c-877610a439c6? 200 22ms","method":"GET","requestID":"683cd17b643c9e02b20e82cf4f542610","responseTime":22,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"89068bf5076d42fab47b1616d501f1a5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.938829,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c45e43a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049595,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5NX0.vNYhShdPHm0MkqklYBfGkBkDwbvwiKOUUOiBablRTBk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a66ade35-1907-4889-8c17-5bc9670dfc06","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1351898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1f56380-d3d3-4e61-a8e3-8a2f3b56c9a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1354303} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13'","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13'","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c45e43a0-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"c45e43a0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"89068bf5076d42fab47b1616d501f1a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c466f630-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ede6d87-3dce-41c7-9dde-6890ac170116","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1849005} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.142308,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c466f630-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","rebac_allow":false,"scope_allow":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":"c466f630-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c466f630-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling 200 10ms","method":"POST","requestID":"c466f630-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c468caf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e27bb48c-9d77-4025-ab25-4d2aa9273128","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049596.1967301} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.763378,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c468caf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","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 | {"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c468caf0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c468caf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling 200 12ms","method":"POST","requestID":"c468caf0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling"} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2546092605856118630 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:BQ0z\r\na=ice-pwd:aShD/KjEKllaecrmu8cKSMlz\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5C:B1:EF:B7:73:1C:CB:3C:67:FE:B7:6D:E8:AF:F9:DA:7E:A2:93:EA:E2:78:73:D4:F8:41:5B:79:77:BC:06:0C\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3962682033 1 udp 2113937151 02ba2016-7443-4df2-b246-beec2f23851e.local 53701 typ host generation 0 ufrag BQ0z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2132417442 1 udp 1677729535 141.24.211.56 53701 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag BQ0z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","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/70b5a487-9ec4-484b-bd9c-877610a439c6'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d6e8d1478e3baa05ac2d37b2721d7f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"9d6e8d1478e3baa05ac2d37b2721d7f3","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"}}},"level":"info","message":"received a callback","requestID":"9d6e8d1478e3baa05ac2d37b2721d7f3"} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d6e8d1478e3baa05ac2d37b2721d7f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"9d6e8d1478e3baa05ac2d37b2721d7f3","responseTime":11,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b5a487-9ec4-484b-bd9c-877610a439c6","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/14cf02a7-488b-4826-a6d3-f3b2ca80da13' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"791f3701c41a4fa818ab18551fb87368","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"791f3701c41a4fa818ab18551fb87368","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"}}},"level":"info","message":"received a callback","requestID":"791f3701c41a4fa818ab18551fb87368"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c5a71750-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F14cf02a7-488b-4826-a6d3-f3b2ca80da13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cc078b6-a986-4f5d-8b9a-1c681621e020","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.283562} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.894008,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5a71750-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13","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":"c5a71750-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c5a71750-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13 200 12ms","method":"GET","requestID":"c5a71750-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 60ms","method":"POST","requestID":"791f3701c41a4fa818ab18551fb87368","responseTime":60,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +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.066","http_referrer":"","http_user_agent":"node-fetch","requestID":"791f3701c41a4fa818ab18551fb87368"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5ae6a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"617b0466-2896-4341-9adf-3788ff1b0369","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.332436} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.458438,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5ae6a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","rebac_allow":false,"scope_allow":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":"c5ae6a50-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5ae6a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling 200 14ms","method":"POST","requestID":"c5ae6a50-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5b12970-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7d16dfe-7057-47fd-970c-bbaf3a2f1298","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.3492575} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.444282,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5b12970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","rebac_allow":false,"scope_allow":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":"c5b12970-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5b12970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling 200 13ms","method":"POST","requestID":"c5b12970-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8","level":"info","message":"auth send jwt","requestID":"33f09521f3d130b24b762312a01c5f2f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"33f09521f3d130b24b762312a01c5f2f","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","requestID":"33f09521f3d130b24b762312a01c5f2f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.153862,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"33f09521f3d130b24b762312a01c5f2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049598,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33f09521f3d130b24b762312a01c5f2f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","requestID":"33f09521f3d130b24b762312a01c5f2f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33f09521f3d130b24b762312a01c5f2f"} experiment-1 | {"level":"info","message":"GET /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287 200 19ms","method":"GET","requestID":"33f09521f3d130b24b762312a01c5f2f","responseTime":19,"status":200,"url":"/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8","level":"info","message":"auth send jwt","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"53ac5de242e73c58d9f0a674e84cc4d8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.214913,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"53ac5de242e73c58d9f0a674e84cc4d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049598,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53ac5de242e73c58d9f0a674e84cc4d8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Attempting to finish experiment","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c5cb4120-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.215269,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5cb4120-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049598,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c5cb4120-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13","device":"70b5a487-9ec4-484b-bd9c-877610a439c6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"74bb3004-5256-4fc7-baff-480c7809d63a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/14cf02a7-488b-4826-a6d3-f3b2ca80da13' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"14cf02a7-488b-4826-a6d3-f3b2ca80da13","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F14cf02a7-488b-4826-a6d3-f3b2ca80da13': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F14cf02a7-488b-4826-a6d3-f3b2ca80da13","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"10ce82e5-4c7c-4b3f-b082-d5a89b116ab2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.5428667} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b804ebe9-e388-4c84-aeea-e813460a6de0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.5432074} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d2d1d4dfb2139752706446240886fa0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 16ms","method":"POST","requestID":"c5cb4120-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3d2d1d4dfb2139752706446240886fa0","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5deebd5f8ced9925a47c57aa4f0660cb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"}}},"level":"info","message":"received a callback","requestID":"3d2d1d4dfb2139752706446240886fa0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5deebd5f8ced9925a47c57aa4f0660cb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"}}},"level":"info","message":"received a callback","requestID":"5deebd5f8ced9925a47c57aa4f0660cb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c5cb4120-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13 204 53ms","method":"DELETE","requestID":"c5cb4120-793e-11ef-9733-5750b05365a5","responseTime":53,"status":204,"url":"/peerconnections/14cf02a7-488b-4826-a6d3-f3b2ca80da13"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"},"level":"info","message":"Successfully finished experiment","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5d7c440-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b5a487-9ec4-484b-bd9c-877610a439c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2a21061-2436-4d2f-87c5-a7067167cfc7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.605142} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.049574,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5d7c440-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6","object_type":"device","rebac_allow":false,"scope_allow":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":"c5d7c440-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F602f4ac8-3950-4f8a-ae2f-cea9f4181287': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F602f4ac8-3950-4f8a-ae2f-cea9f4181287","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"5ce26239-a5a4-4f02-91d8-1369e71046c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.6131666} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5d7c440-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b90fcf1-937c-4ca3-b11b-59f0c9857358","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.6135368} device-1 | {"level":"info","message":"POST /devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling 200 18ms","method":"POST","requestID":"c5d7c440-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/70b5a487-9ec4-484b-bd9c-877610a439c6/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"53ac5de242e73c58d9f0a674e84cc4d8","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5db46b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F74bb3004-5256-4fc7-baff-480c7809d63a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b8b2565-ebb2-416e-b6d6-ac1bfb1b773c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.6278136} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.108462,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5db46b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/74bb3004-5256-4fc7-baff-480c7809d63a","object_type":"device","rebac_allow":false,"scope_allow":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":"c5db46b0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5db46b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling 200 16ms","method":"POST","requestID":"c5db46b0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/74bb3004-5256-4fc7-baff-480c7809d63a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.201","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53ac5de242e73c58d9f0a674e84cc4d8"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3030","request_time":"4.463","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"77746ba951aa4a9e1c0d931a5261047d"} experiment-1 | {"level":"info","message":"DELETE /experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287 204 197ms","method":"DELETE","requestID":"53ac5de242e73c58d9f0a674e84cc4d8","responseTime":197,"status":204,"url":"/experiments/602f4ac8-3950-4f8a-ae2f-cea9f4181287"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"3d2d1d4dfb2139752706446240886fa0","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +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":"3d2d1d4dfb2139752706446240886fa0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"5deebd5f8ced9925a47c57aa4f0660cb","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"5deebd5f8ced9925a47c57aa4f0660cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8","level":"info","message":"auth send jwt","requestID":"b244a65c89ddd49a98138c0be9c794bd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b244a65c89ddd49a98138c0be9c794bd"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +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.969","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":"90465a38292f97948dc81acc8e846eea"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.103258,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b244a65c89ddd49a98138c0be9c794bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049598,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","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/74bb3004-5256-4fc7-baff-480c7809d63a' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"af64e4cf-d084-435a-8ccf-b48c624ec8a4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7196374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/70b5a487-9ec4-484b-bd9c-877610a439c6' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03d1619e-c26b-44d9-81ab-94247d6c406b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7255168} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e668b09a-f59e-4270-b9fa-3ba93911e6c1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7352378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e234aa0-9473-4ef8-bac8-cc32e4339add","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7354863} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"d944c76e-7fab-45a0-b945-d8ac765b7542","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7398782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b244a65c89ddd49a98138c0be9c794bd"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b244a65c89ddd49a98138c0be9c794bd","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b244a65c89ddd49a98138c0be9c794bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8","level":"info","message":"auth send jwt","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.812748,"resp_status":200,"subsystem":"opa","time":"2024-09-22T23:59:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049598,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTU5OH0.P4MV3W0DSEYywn6HbC3oSIAwdMHfUNBdVy-7mB-q5l8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"900dc042-2810-4bd4-8da4-70551d7fb776","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7690113} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"753e8056-bc8c-49aa-91fc-81d5e41d2b74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7738283} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ff72598d-0878-4bee-b77d-6974e0396a75","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7847698} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59f066b5-0f59-4162-a14c-f830ceeef723","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7860253} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"87a4334e-76c5-4565-8dd8-0e0485f1fa2e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049598.7902453} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f"} gateway-1 | {"time_local":"22/Sep/2024:23:59:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"0a8af2ff531a6eeb3904e1116a6aa53f","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3fe5506d353a95dea98c29f89dfbe23b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3fe5506d353a95dea98c29f89dfbe23b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/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":"3fe5506d353a95dea98c29f89dfbe23b"} device-1 | {"level":"info","message":"OPTIONS /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/websocket 200 1ms","method":"OPTIONS","requestID":"3fe5506d353a95dea98c29f89dfbe23b","responseTime":1,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"085cdd71ed2a3cc834fab71e04df6c8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"085cdd71ed2a3cc834fab71e04df6c8b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"085cdd71ed2a3cc834fab71e04df6c8b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.052525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"085cdd71ed2a3cc834fab71e04df6c8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"085cdd71ed2a3cc834fab71e04df6c8b","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e0b4d65f53ebb235112127aba4c8b05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9e0b4d65f53ebb235112127aba4c8b05","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/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":"9e0b4d65f53ebb235112127aba4c8b05"} device-1 | {"level":"info","message":"OPTIONS /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/websocket 200 1ms","method":"OPTIONS","requestID":"9e0b4d65f53ebb235112127aba4c8b05","responseTime":1,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"c519cb74d7d99970e530d6262fc1bb2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c519cb74d7d99970e530d6262fc1bb2d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c519cb74d7d99970e530d6262fc1bb2d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"085cdd71ed2a3cc834fab71e04df6c8b"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c519cb74d7d99970e530d6262fc1bb2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/websocket 200 24ms","method":"POST","requestID":"085cdd71ed2a3cc834fab71e04df6c8b","responseTime":24,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"085cdd71ed2a3cc834fab71e04df6c8b"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c519cb74d7d99970e530d6262fc1bb2d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c519cb74d7d99970e530d6262fc1bb2d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","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":"c519cb74d7d99970e530d6262fc1bb2d"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/websocket 200 17ms","method":"POST","requestID":"c519cb74d7d99970e530d6262fc1bb2d","responseTime":17,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a0b703017faa9463c1e1bc5d8e607f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4a0b703017faa9463c1e1bc5d8e607f1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"4a0b703017faa9463c1e1bc5d8e607f1"} device-1 | {"level":"info","message":"OPTIONS /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 1ms","method":"OPTIONS","requestID":"4a0b703017faa9463c1e1bc5d8e607f1","responseTime":1,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"43eee83d9356639cb1926ab9423a9ef9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"43eee83d9356639cb1926ab9423a9ef9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"00b0c57d255b346b442bee54bba6834f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"43eee83d9356639cb1926ab9423a9ef9"} device-1 | {"level":"info","message":"OPTIONS /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 1ms","method":"OPTIONS","requestID":"43eee83d9356639cb1926ab9423a9ef9","responseTime":1,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"00b0c57d255b346b442bee54bba6834f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681731,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00b0c57d255b346b442bee54bba6834f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036354,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"268d43ca-a70b-40ab-8ecd-d502e28d7298","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.8507404} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"f65101ef-2434-4672-ace9-21f31837fd97","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.856511} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27186cb7-1739-4d3c-85da-c7e9a453dcec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.8598003} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":6,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0da705d7-dd63-41a7-b873-cb46705506c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.8670335} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"45022810-8c38-4e56-a065-cdf27e9bf423","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.8805878} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"97b4f013-5cc4-4e66-b183-cf79d1008e88","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.8819907} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"e7889d3a7e5fe7faff785cf0763a7ec6"} device-1 | {"level":"info","message":"PATCH /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 45ms","method":"PATCH","requestID":"e7889d3a7e5fe7faff785cf0763a7ec6","responseTime":45,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"00b0c57d255b346b442bee54bba6834f"} device-1 | {"level":"info","message":"PATCH /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 52ms","method":"PATCH","requestID":"00b0c57d255b346b442bee54bba6834f","responseTime":52,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.060","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":"00b0c57d255b346b442bee54bba6834f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"6095fb367890bc77ec8a48bbd20836d8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6095fb367890bc77ec8a48bbd20836d8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6095fb367890bc77ec8a48bbd20836d8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200927,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6095fb367890bc77ec8a48bbd20836d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6095fb367890bc77ec8a48bbd20836d8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"0efcc6c1-b401-47fa-89c2-efdfd694dab6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.9092684} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6095fb367890bc77ec8a48bbd20836d8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6095fb367890bc77ec8a48bbd20836d8"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6095fb367890bc77ec8a48bbd20836d8"} device-1 | {"level":"info","message":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 17ms","method":"GET","requestID":"6095fb367890bc77ec8a48bbd20836d8","responseTime":17,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"81f4fc12972969b9d5f747c5ccef68e2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81f4fc12972969b9d5f747c5ccef68e2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81f4fc12972969b9d5f747c5ccef68e2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.126887,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"81f4fc12972969b9d5f747c5ccef68e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81f4fc12972969b9d5f747c5ccef68e2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"1d2c29f6-5f83-4567-abde-045984f4a890","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049600.9346566} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"81f4fc12972969b9d5f747c5ccef68e2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81f4fc12972969b9d5f747c5ccef68e2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81f4fc12972969b9d5f747c5ccef68e2"} device-1 | {"level":"info","message":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 17ms","method":"GET","requestID":"81f4fc12972969b9d5f747c5ccef68e2","responseTime":17,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw","level":"info","message":"auth send jwt","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"65f2956ab71a0a8308d327ba47c6ddad","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.268429,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"65f2956ab71a0a8308d327ba47c6ddad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65f2956ab71a0a8308d327ba47c6ddad","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to run experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to book experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully booked experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7469680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c746e4a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868056,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7469680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c7469680-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.470596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c746e4a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c746e4a0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"8de990e5-80be-4760-85e8-cd23558c9683","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.0155756} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c7469680-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7469680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"c477414b-d2cb-484a-b2ce-a9b86e0dec60","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.0225549} device-1 | {"level":"info","message":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 23ms","method":"GET","requestID":"c7469680-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c746e4a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c746e4a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 26ms","method":"GET","requestID":"c746e4a0-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Setting up experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully set up experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7551570-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7556390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c755d8c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.90884,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully running experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7551570-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c7551570-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.872252,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7556390-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c7556390-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"bf3a69c6-ed21-4a0e-8d86-e2459a8f0693","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1159208} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7556390-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"637d992f-0690-464c-b74b-b286995ba31c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.117776} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c7551570-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.006008,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7556390-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"213b865c-20ce-498e-ba18-a33dd991febf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1236887} device-1 | {"level":"info","message":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 29ms","method":"GET","requestID":"c7556390-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c755d8c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","rebac_allow":false,"scope_allow":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":"c755d8c0-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4a2112c4-ba19-4fc8-913e-bef1193dd51c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4a2112c4-ba19-4fc8-913e-bef1193dd51c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"0bf3e208-a2ba-4d33-b914-dbabacbee22e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1258445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5a2feaa-782d-4361-9017-9055a00336a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1265783} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7551570-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"65f2956ab71a0a8308d327ba47c6ddad","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 36ms","method":"GET","requestID":"c7551570-793e-11ef-9733-5750b05365a5","responseTime":36,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c755d8c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling 200 34ms","method":"POST","requestID":"c755d8c0-793e-11ef-9733-5750b05365a5","responseTime":34,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c75bf340-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c75c8f80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87a48971-97f4-4fd7-a93c-36942e91f135","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.147509} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.875049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c75bf340-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","rebac_allow":false,"scope_allow":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":"c75bf340-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be31693c-fa7c-40ad-baae-10e8941c4f74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.151216} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.209","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"level":"info","message":"POST /experiments? 201 203ms","method":"POST","requestID":"65f2956ab71a0a8308d327ba47c6ddad","responseTime":203,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.455747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c75c8f80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","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":"c75bf340-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c75c8f80-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling 200 14ms","method":"POST","requestID":"c75bf340-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c75e8b50-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"dd4ebc7831b58bc963aeee596336473f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd4ebc7831b58bc963aeee596336473f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd4ebc7831b58bc963aeee596336473f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c75c8f80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling 200 18ms","method":"POST","requestID":"c75c8f80-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85ca22de-98f1-497a-bac2-c1cb53017f6c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.162748} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dd4ebc7831b58bc963aeee596336473f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd4ebc7831b58bc963aeee596336473f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.187299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c75e8b50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","rebac_allow":false,"scope_allow":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":"c75e8b50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"2057b1b8-afc1-4b79-b10d-79cb65f01496","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1693223} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c75e8b50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd4ebc7831b58bc963aeee596336473f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling 200 14ms","method":"POST","requestID":"c75e8b50-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7612360-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7614a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd4ebc7831b58bc963aeee596336473f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd4ebc7831b58bc963aeee596336473f"} device-1 | {"level":"info","message":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 18ms","method":"GET","requestID":"dd4ebc7831b58bc963aeee596336473f","responseTime":18,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1056,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"21a21c05c86ff59d1e68589e9c936a2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21a21c05c86ff59d1e68589e9c936a2c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7612360-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21a21c05c86ff59d1e68589e9c936a2c"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c7612360-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880287,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7614a70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c7614a70-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.039443,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"21a21c05c86ff59d1e68589e9c936a2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"21a21c05c86ff59d1e68589e9c936a2c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.735212195Z"}]},"request_id":"28c350e9-5ac0-4194-90c5-66f616087b1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1904783} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"948ee530-87e6-4b98-b8cc-814cb726fe52","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1921842} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c7612360-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7614a70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-22T23:59:58.784744821Z"}]},"request_id":"7350f726-88bf-476e-aaaa-895bb2d816cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.1977012} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21a21c05c86ff59d1e68589e9c936a2c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7612360-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7? 200 27ms","method":"GET","requestID":"c7612360-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7614a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 27ms","method":"GET","requestID":"c7614a70-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21a21c05c86ff59d1e68589e9c936a2c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21a21c05c86ff59d1e68589e9c936a2c"} device-1 | {"level":"info","message":"GET /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458? 200 21ms","method":"GET","requestID":"21a21c05c86ff59d1e68589e9c936a2c","responseTime":21,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Building connection plan","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"2ede7188-0112-4d06-b0be-cc2062e9452e"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"329e0e21-245f-4741-adda-e1083ef24a2d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"34b1ac65-b415-48a2-8519-ee3525019bec"}]},"level":"info","message":"Built pairwise service configurations","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.660907,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7665380-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049600,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMH0.6BnzsNMYmEbDHND2gZGp5jRtabMjYlYVwUkXsmKgRFw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7665380-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"fa2e467f-1bba-4e79-975f-0229eff50bc9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.220402} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39685654-f0f0-4244-b1cb-842ded711a1a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.2205493} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c7665380-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5'","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5'","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c7665380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c7665380-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"c7665380-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"65f2956ab71a0a8308d327ba47c6ddad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c76e69d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f058e89-a921-4402-9975-b6e660f4085e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.2657948} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.390515,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c76e69d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c76e69d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c76e69d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling 200 8ms","method":"POST","requestID":"c76e69d0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c76ff070-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b65ca295-1a04-4279-aaf8-d580b7addfa6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.2771254} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.21233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c76ff070-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","rebac_allow":false,"scope_allow":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":"c76ff070-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c76ff070-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling 200 10ms","method":"POST","requestID":"c76ff070-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling"} device-1 | {"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6665389746366168450 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:/5fR\r\na=ice-pwd:UUtB2fHAs0B4TXcTa7/JDQFH\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6A:5C:07:A8:00:80:5A:3E:E6:9E:3D:B0:BC:FF:31:9F:22:80:42:93:8F:0C:D2:03:4A:F4:CB:33:91:8E:1B:3B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1400717908951387981 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:wMX7\r\na=ice-pwd:p3ilYmhtFR9kqLQgVTKaSU8G\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CC:28:E4:8C:2E:FB:BC:27:53:36:EE:2E:06:60:E2:A7:9F:B7:87:23:8A:4A:BE:06:62:52:3C:37:64:9B:FB:9F\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1824427126 1 udp 2113937151 5613a589-7275-4099-b908-bfbbd820d581.local 60797 typ host generation 0 ufrag wMX7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1323303675 1 udp 1677729535 141.24.211.56 60797 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wMX7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","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/098fec21-7cf4-446d-8fb9-6f9e7ff56458'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458'"} device-1 | {"content":{"candidate":"candidate:3861200167 1 udp 2113937151 f39f0e75-3e2e-4369-ba51-3eb689cda840.local 43499 typ host generation 0 ufrag /5fR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1963891764 1 udp 1677729535 141.24.211.56 43499 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /5fR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","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/a63e2cb5-bdb3-4767-9582-764f2e8caab7'"} device-1 | {"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","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/56b03354-148a-4f0d-929c-95e4e1a468f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56b03354-148a-4f0d-929c-95e4e1a468f5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c733d343c1434ff9f20dc9bbd2cd386a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c733d343c1434ff9f20dc9bbd2cd386a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"}}},"level":"info","message":"received a callback","requestID":"c733d343c1434ff9f20dc9bbd2cd386a"} device-1 | {"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"c733d343c1434ff9f20dc9bbd2cd386a","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"c733d343c1434ff9f20dc9bbd2cd386a"} device-1 | {"device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"56b03354-148a-4f0d-929c-95e4e1a468f5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"56b03354-148a-4f0d-929c-95e4e1a468f5","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/56b03354-148a-4f0d-929c-95e4e1a468f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56b03354-148a-4f0d-929c-95e4e1a468f5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a646a7f5a20671d7637048181b05a35b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a646a7f5a20671d7637048181b05a35b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"}}},"level":"info","message":"received a callback","requestID":"a646a7f5a20671d7637048181b05a35b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c77ee490-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56b03354-148a-4f0d-929c-95e4e1a468f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f29649a-ffd5-44d5-9274-d227da79ba8b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.374216} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.066145,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c77ee490-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","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":"c77ee490-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c77ee490-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5 200 10ms","method":"GET","requestID":"c77ee490-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"a646a7f5a20671d7637048181b05a35b","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"a646a7f5a20671d7637048181b05a35b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c78414b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc77e4f9-faca-4ba7-8ee5-48d17f47dfb5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.4092212} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.14378,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c78414b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","rebac_allow":false,"scope_allow":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":"c78414b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c78414b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling 200 19ms","method":"POST","requestID":"c78414b0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7874900-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b949914d-cb6b-44ea-8c2c-79e9399a7672","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.4294944} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.489554,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7874900-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7874900-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7874900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling 200 25ms","method":"POST","requestID":"c7874900-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"4392d83476d7d10427f34bfdf7ac990b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4392d83476d7d10427f34bfdf7ac990b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","requestID":"4392d83476d7d10427f34bfdf7ac990b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.139332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4392d83476d7d10427f34bfdf7ac990b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4392d83476d7d10427f34bfdf7ac990b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","requestID":"4392d83476d7d10427f34bfdf7ac990b"} experiment-1 | {"level":"info","message":"GET /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c 200 16ms","method":"GET","requestID":"4392d83476d7d10427f34bfdf7ac990b","responseTime":16,"status":200,"url":"/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4392d83476d7d10427f34bfdf7ac990b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"096c8e7d15f8228594ae9487c0d28010"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"096c8e7d15f8228594ae9487c0d28010","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","requestID":"096c8e7d15f8228594ae9487c0d28010"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.327716,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"096c8e7d15f8228594ae9487c0d28010","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"096c8e7d15f8228594ae9487c0d28010","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Attempting to finish experiment","requestID":"096c8e7d15f8228594ae9487c0d28010"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c7a75420-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.168572,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7a75420-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7a75420-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","device":"098fec21-7cf4-446d-8fb9-6f9e7ff56458","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5","device":"a63e2cb5-bdb3-4767-9582-764f2e8caab7","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/56b03354-148a-4f0d-929c-95e4e1a468f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56b03354-148a-4f0d-929c-95e4e1a468f5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56b03354-148a-4f0d-929c-95e4e1a468f5': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56b03354-148a-4f0d-929c-95e4e1a468f5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"1a492063-7e50-4d83-ba06-966061b93ddd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.6571016} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c0f0669ad861c66ec4e59d17c7466405","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ca65a63-34da-41e8-b46d-eb2c39371a27","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.6575732} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c0f0669ad861c66ec4e59d17c7466405","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c7a75420-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"}}},"level":"info","message":"received a callback","requestID":"c0f0669ad861c66ec4e59d17c7466405"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f296788449bb4f65c4e5e9a792d6fd99","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f296788449bb4f65c4e5e9a792d6fd99","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"}}},"level":"info","message":"received a callback","requestID":"f296788449bb4f65c4e5e9a792d6fd99"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c7a75420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5 204 43ms","method":"DELETE","requestID":"c7a75420-793e-11ef-9733-5750b05365a5","responseTime":43,"status":204,"url":"/peerconnections/56b03354-148a-4f0d-929c-95e4e1a468f5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"},"level":"info","message":"Successfully finished experiment","requestID":"096c8e7d15f8228594ae9487c0d28010"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7b0a2f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F098fec21-7cf4-446d-8fb9-6f9e7ff56458","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7a196ce-a527-43dd-a9c5-fae98a71826f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.7030451} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.583985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7b0a2f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458","object_type":"device","rebac_allow":false,"scope_allow":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":"c7b0a2f0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7b0a2f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling 200 14ms","method":"POST","requestID":"c7b0a2f0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4a2112c4-ba19-4fc8-913e-bef1193dd51c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4a2112c4-ba19-4fc8-913e-bef1193dd51c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0e5a0f71-95e7-42aa-ae3c-213d7ee89d8a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.7108102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9be93f61-68d6-4322-83a8-e38ae3fea46e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.7110841} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7b33b00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"096c8e7d15f8228594ae9487c0d28010","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa63e2cb5-bdb3-4767-9582-764f2e8caab7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2db970a-f065-455c-9374-8854e5d16a00","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.718885} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.388645,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c7b33b00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7","object_type":"device","rebac_allow":false,"scope_allow":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":"c7b33b00-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7b33b00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling 200 14ms","method":"POST","requestID":"c7b33b00-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c","requestID":"096c8e7d15f8228594ae9487c0d28010"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"096c8e7d15f8228594ae9487c0d28010"} experiment-1 | {"level":"info","message":"DELETE /experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c 204 158ms","method":"DELETE","requestID":"096c8e7d15f8228594ae9487c0d28010","responseTime":158,"status":204,"url":"/experiments/4a2112c4-ba19-4fc8-913e-bef1193dd51c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"c0f0669ad861c66ec4e59d17c7466405","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"c0f0669ad861c66ec4e59d17c7466405"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"f296788449bb4f65c4e5e9a792d6fd99","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"f296788449bb4f65c4e5e9a792d6fd99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"2c21091e5e254eb21796d30f72d9d4a9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2c21091e5e254eb21796d30f72d9d4a9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.935329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","request_time":"0.985","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":"47360ca103f6d98b93c23952d11fd507"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","request_time":"0.996","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":"0512e662c7ca4c003dd166ce9af141ef"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2c21091e5e254eb21796d30f72d9d4a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/098fec21-7cf4-446d-8fb9-6f9e7ff56458' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a63e2cb5-bdb3-4767-9582-764f2e8caab7' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0923e5d8-fad5-418a-b3b7-426e4f50fb16","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.808223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1070329f-ac31-4dc6-8440-eb8e81980bad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8130116} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e325e8d0-a9bc-48f1-a030-fedaf88487ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8236678} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a064578-d31b-4e09-88fc-74e5b2f4ba5c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8238704} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"59f4248a-bd0e-49c6-a279-5a026d531682","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8274088} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2c21091e5e254eb21796d30f72d9d4a9"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"2c21091e5e254eb21796d30f72d9d4a9","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c21091e5e254eb21796d30f72d9d4a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA","level":"info","message":"auth send jwt","requestID":"5a72b539d634a934ef773ddcceda121a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5a72b539d634a934ef773ddcceda121a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.645254,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5a72b539d634a934ef773ddcceda121a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049601,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMX0.y-O9DLo8wTj9hhAI1gPw7hnYG6mRxtpsmZkVRplZWIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"43dbfb3e-3c62-48e5-86c2-f0d24a026cf1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.850055} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01bac28d-0a00-42cf-a9da-ef7ee974ecfd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8546958} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"06bee767-4ebb-4764-aa51-8fd7cf789cc6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8621993} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd546adf-5fad-46b7-a114-b588e56127de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.862561} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"6a853843-8d71-4c40-8a60-84118b606939","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049601.8662326} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5a72b539d634a934ef773ddcceda121a"} device-1 | {"level":"info","message":"POST /devices? 201 34ms","method":"POST","requestID":"5a72b539d634a934ef773ddcceda121a","responseTime":34,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a72b539d634a934ef773ddcceda121a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMn0.mlDZtgtXZ5MAqlZ7zt69Vx4RGyrLjHoNaEOhU5CYuhE","level":"info","message":"auth send jwt","requestID":"2372a1a69fcd6112db0c2c366e38a440"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2372a1a69fcd6112db0c2c366e38a440","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2372a1a69fcd6112db0c2c366e38a440"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915002,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2372a1a69fcd6112db0c2c366e38a440","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049602,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMn0.mlDZtgtXZ5MAqlZ7zt69Vx4RGyrLjHoNaEOhU5CYuhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2372a1a69fcd6112db0c2c366e38a440","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"b341f7a7-7762-4c4b-8a97-c65b1b57d34f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049602.3557525} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2372a1a69fcd6112db0c2c366e38a440","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83cacab4-d0b9-46fa-954f-8a42cde5dea3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049602.3610387} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2372a1a69fcd6112db0c2c366e38a440","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"fb4da2f1-177b-4fa2-92b6-902514c9a13f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049602.3718212} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2372a1a69fcd6112db0c2c366e38a440","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2372a1a69fcd6112db0c2c366e38a440"} gateway-1 | {"time_local":"23/Sep/2024:00:00:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/33d41be7-ce8d-439f-8742-6b689dc4e485 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2372a1a69fcd6112db0c2c366e38a440"} device-1 | {"level":"info","message":"PATCH /devices/33d41be7-ce8d-439f-8742-6b689dc4e485 200 28ms","method":"PATCH","requestID":"2372a1a69fcd6112db0c2c366e38a440","responseTime":28,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMn0.mlDZtgtXZ5MAqlZ7zt69Vx4RGyrLjHoNaEOhU5CYuhE","level":"info","message":"auth send jwt","requestID":"c5e9531a3f2da929c8ceaa88a7b77384"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c5e9531a3f2da929c8ceaa88a7b77384","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c5e9531a3f2da929c8ceaa88a7b77384"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673196,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5e9531a3f2da929c8ceaa88a7b77384","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049602,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwMn0.mlDZtgtXZ5MAqlZ7zt69Vx4RGyrLjHoNaEOhU5CYuhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5e9531a3f2da929c8ceaa88a7b77384","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c5e9531a3f2da929c8ceaa88a7b77384"} gateway-1 | {"time_local":"23/Sep/2024:00:00:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c5e9531a3f2da929c8ceaa88a7b77384"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/websocket 200 16ms","method":"POST","requestID":"c5e9531a3f2da929c8ceaa88a7b77384","responseTime":16,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7bbccc9063cd42b96f67438ffa40f51b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7bbccc9063cd42b96f67438ffa40f51b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4eba4233-5c56-485f-9b23-c11d339bd080/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":"7bbccc9063cd42b96f67438ffa40f51b"} device-1 | {"level":"info","message":"OPTIONS /devices/4eba4233-5c56-485f-9b23-c11d339bd080/websocket 200 1ms","method":"OPTIONS","requestID":"7bbccc9063cd42b96f67438ffa40f51b","responseTime":1,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14","level":"info","message":"auth send jwt","requestID":"2168c0287139039bc35d27868a3c463e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2168c0287139039bc35d27868a3c463e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2168c0287139039bc35d27868a3c463e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.847478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2168c0287139039bc35d27868a3c463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049603,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2168c0287139039bc35d27868a3c463e","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2168c0287139039bc35d27868a3c463e"} gateway-1 | {"time_local":"23/Sep/2024:00:00:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"2168c0287139039bc35d27868a3c463e"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/websocket 200 25ms","method":"POST","requestID":"2168c0287139039bc35d27868a3c463e","responseTime":25,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84fdcefb696553cb40229888bfb1da44","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"84fdcefb696553cb40229888bfb1da44","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4eba4233-5c56-485f-9b23-c11d339bd080? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"84fdcefb696553cb40229888bfb1da44"} device-1 | {"level":"info","message":"OPTIONS /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 1ms","method":"OPTIONS","requestID":"84fdcefb696553cb40229888bfb1da44","responseTime":1,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14","level":"info","message":"auth send jwt","requestID":"6c33c246ee11277f859d1054c39154eb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6c33c246ee11277f859d1054c39154eb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6c33c246ee11277f859d1054c39154eb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.477118,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6c33c246ee11277f859d1054c39154eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049603,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c33c246ee11277f859d1054c39154eb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"396000cb-2ba5-45e8-88d3-1c7b0289b40e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049603.9582398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c33c246ee11277f859d1054c39154eb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03612389-442e-4393-abed-f4b74707cf72","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049603.9671526} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6c33c246ee11277f859d1054c39154eb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"3c6b991c-0062-42e0-8881-1092d60f682b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049603.9791486} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c33c246ee11277f859d1054c39154eb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6c33c246ee11277f859d1054c39154eb"} gateway-1 | {"time_local":"23/Sep/2024:00:00:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4eba4233-5c56-485f-9b23-c11d339bd080? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.049","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":"6c33c246ee11277f859d1054c39154eb"} device-1 | {"level":"info","message":"PATCH /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 42ms","method":"PATCH","requestID":"6c33c246ee11277f859d1054c39154eb","responseTime":42,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14","level":"info","message":"auth send jwt","requestID":"1584809fd5569dc04ac0a625ade4dcc4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1584809fd5569dc04ac0a625ade4dcc4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1584809fd5569dc04ac0a625ade4dcc4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.17451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1584809fd5569dc04ac0a625ade4dcc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049603,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwM30.Bu2Xn2Q0LQvkL1TBdk3ht0pftg5u09t2FBYNKwGOO14"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1584809fd5569dc04ac0a625ade4dcc4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"b00cb936-20e5-4e2a-aa9f-fd48b99dfa67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.0100467} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1584809fd5569dc04ac0a625ade4dcc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1584809fd5569dc04ac0a625ade4dcc4"} device-1 | {"level":"info","message":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 18ms","method":"GET","requestID":"1584809fd5569dc04ac0a625ade4dcc4","responseTime":18,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1584809fd5569dc04ac0a625ade4dcc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA","level":"info","message":"auth send jwt","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19672,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f8f76dc3197ad31b406d7c9e9453bcc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"e8f2fc97-ae0e-459d-b184-108b8e190f3d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.035512} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9"} device-1 | {"level":"info","message":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? 200 16ms","method":"GET","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9","responseTime":16,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8f76dc3197ad31b406d7c9e9453bcc9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA","level":"info","message":"auth send jwt","requestID":"74fe503c3997330d8b38a6c1ad261386"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74fe503c3997330d8b38a6c1ad261386","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"74fe503c3997330d8b38a6c1ad261386"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.779363,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"74fe503c3997330d8b38a6c1ad261386","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74fe503c3997330d8b38a6c1ad261386","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to run experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to book experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully booked experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c91da070-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c91dee90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.129989,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c91da070-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c91da070-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156045,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c91dee90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c91dee90-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"d8ad3b2b-5432-4083-8fb9-dcba623003c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.0993423} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c91da070-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"50b9a389-c64f-4c02-8084-bf08bae24107","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.10068} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c91dee90-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c91da070-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 23ms","method":"GET","requestID":"c91da070-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c91dee90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? 200 23ms","method":"GET","requestID":"c91dee90-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Setting up experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully set up experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c92baa30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c92bf850-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c92c4670-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186496,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully running experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c92baa30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c92baa30-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330997,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c92bf850-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c92bf850-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.331372,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b197fc6-416f-4ced-bdef-cc8b9a697fd9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.193519} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c92c4670-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","rebac_allow":false,"scope_allow":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":"c92c4670-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"a8aa9ab6-4d2c-493d-b17b-5a8b8f34b608","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.19789} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c92baa30-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"09e4f33a-0892-486a-9b37-426b32d31c55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2025805} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c92bf850-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c92c4670-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling 200 24ms","method":"POST","requestID":"c92c4670-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c930b340-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c92baa30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 38ms","method":"GET","requestID":"c92baa30-793e-11ef-9733-5750b05365a5","responseTime":38,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c92bf850-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? 200 38ms","method":"GET","requestID":"c92bf850-793e-11ef-9733-5750b05365a5","responseTime":38,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6024ddc-245c-4598-bea1-130e08053eb4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6024ddc-245c-4598-bea1-130e08053eb4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"359c57a8-3248-4d45-8efb-b1f370d84b67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2158794} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfec24e8-b942-4189-a99e-7207e949a73d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2163856} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"74fe503c3997330d8b38a6c1ad261386","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecb8ea66-715c-4877-8875-eca2638ceec2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2214339} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c93239e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.494686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c930b340-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","rebac_allow":false,"scope_allow":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":"c930b340-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e6e3884-33da-414a-95f0-6b976bf67440","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2296116} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c930b340-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling 200 17ms","method":"POST","requestID":"c930b340-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.403152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 182ms","method":"POST","requestID":"74fe503c3997330d8b38a6c1ad261386","responseTime":182,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74fe503c3997330d8b38a6c1ad261386"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c93239e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","rebac_allow":false,"scope_allow":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":"c93239e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c93239e0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA","level":"info","message":"auth send jwt","requestID":"6873463666425641d38fccb97be675a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6873463666425641d38fccb97be675a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling 200 14ms","method":"POST","requestID":"c93239e0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6873463666425641d38fccb97be675a6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c934f900-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6873463666425641d38fccb97be675a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6873463666425641d38fccb97be675a6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"89672cc5-660c-4a1e-b0ee-abd11d84dd2e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2480576} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6873463666425641d38fccb97be675a6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"534c9c40-1aa4-4b0b-abed-8b6977039466","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2486105} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.298471,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c934f900-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","rebac_allow":false,"scope_allow":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":"c934f900-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6873463666425641d38fccb97be675a6"} gateway-1 | {"time_local":"23/Sep/2024:00:00:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6873463666425641d38fccb97be675a6"} device-1 | {"level":"info","message":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 19ms","method":"GET","requestID":"6873463666425641d38fccb97be675a6","responseTime":19,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c934f900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling 200 18ms","method":"POST","requestID":"c934f900-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA","level":"info","message":"auth send jwt","requestID":"487b2a289389b6f7a80ab3e7bef02ebd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9382d50-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"487b2a289389b6f7a80ab3e7bef02ebd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9387b70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"487b2a289389b6f7a80ab3e7bef02ebd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49734","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918009,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c9382d50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9382d50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c9387b70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9387b70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49744","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158941,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"487b2a289389b6f7a80ab3e7bef02ebd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"487b2a289389b6f7a80ab3e7bef02ebd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.823649433Z"}]},"request_id":"bbab899d-ad96-47e6-9251-ffb7e3b99c64","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.273179} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"da140ef8-9900-47ef-aaec-f80613978b09","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2743351} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9382d50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:01.862181210Z"}]},"request_id":"dbdc3208-c32e-4338-9cb7-529e50a070ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.2755322} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9387b70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"487b2a289389b6f7a80ab3e7bef02ebd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9387b70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? 200 20ms","method":"GET","requestID":"c9387b70-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9382d50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4eba4233-5c56-485f-9b23-c11d339bd080? 200 23ms","method":"GET","requestID":"c9382d50-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"487b2a289389b6f7a80ab3e7bef02ebd"} gateway-1 | {"time_local":"23/Sep/2024:00:00:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"487b2a289389b6f7a80ab3e7bef02ebd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Building connection plan","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"GET /devices/33d41be7-ce8d-439f-8742-6b689dc4e485? 200 21ms","method":"GET","requestID":"487b2a289389b6f7a80ab3e7bef02ebd","responseTime":21,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485?"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"b503fb09-6309-4690-8d46-c781edbc13c8"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"fae32df8-6819-49bd-b586-1ea13c7b7a0d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"a12a0e4d-30b5-4105-bd8f-dc8fc433738f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"74fe503c3997330d8b38a6c1ad261386"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.924323,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c93c4c00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049604,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNH0.wsCV6DbHmYICTCnd-zzGva-1w8Jh-MAGbw3d_-MLJDA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"fbae98d1-cdcb-4378-b5b7-de4fdbbc16b4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.3028202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1af1cc17-5001-4e6b-a987-6b32b91022ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.3030028} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d'","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d'","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c93c4c00-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"74fe503c3997330d8b38a6c1ad261386"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9454cb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76779590-0806-4f71-8ace-ffb467322104","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.3519683} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.097722,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c9454cb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9454cb0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9454cb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling 200 9ms","method":"POST","requestID":"c9454cb0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9472170-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a993b6ad-ac2f-4382-b0c8-d7b55a633e3f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049604.3635151} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.614076,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c9472170-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","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 | {"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9472170-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"canTrickle":true},"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9472170-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling 200 11ms","method":"POST","requestID":"c9472170-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8649348482968250728 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:8Hcx\r\na=ice-pwd:jNz82Ro6oUJVAJaPBlv5o558\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D2:56:88:EF:4A:5E:7F:81:5E:22:B9:75:F7:E2:CA:43:36:89:1B:75:8A:BC:3F:0B:35:BC:93:FA:20:7A:89:26\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"6340cade-357b-4b3c-9285-366a45f2484d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/6340cade-357b-4b3c-9285-366a45f2484d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6340cade-357b-4b3c-9285-366a45f2484d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"97c05167bf040aa727461cc4d6463190","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"97c05167bf040aa727461cc4d6463190","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"}}},"level":"info","message":"received a callback","requestID":"97c05167bf040aa727461cc4d6463190"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"97c05167bf040aa727461cc4d6463190","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +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":"97c05167bf040aa727461cc4d6463190"} device-1 | {"content":{"candidate":"candidate:3732344299 1 udp 2113937151 e5ffd0e8-f609-4f1e-9d02-b9ddc3b0f94e.local 50889 typ host generation 0 ufrag 8Hcx network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1515874196 1 udp 1677729535 141.24.211.56 50889 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 8Hcx network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:156751903 1 udp 33562623 141.24.210.113 62810 typ relay raddr 141.24.211.56 rport 50889 generation 0 ufrag 8Hcx network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4eba4233-5c56-485f-9b23-c11d339bd080","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/4eba4233-5c56-485f-9b23-c11d339bd080'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080'"} device-1 | {"data":{"peerconnection":"6340cade-357b-4b3c-9285-366a45f2484d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"6340cade-357b-4b3c-9285-366a45f2484d","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/6340cade-357b-4b3c-9285-366a45f2484d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6340cade-357b-4b3c-9285-366a45f2484d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff254374d39e645630c35fac4fa2dee0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ff254374d39e645630c35fac4fa2dee0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"}}},"level":"info","message":"received a callback","requestID":"ff254374d39e645630c35fac4fa2dee0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ca86f470-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6340cade-357b-4b3c-9285-366a45f2484d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a094ecc-6260-4091-a15a-520da49f8d59","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.4610834} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.931108,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ca86f470-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d","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":"ca86f470-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ca86f470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/6340cade-357b-4b3c-9285-366a45f2484d 200 11ms","method":"GET","requestID":"ca86f470-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"ff254374d39e645630c35fac4fa2dee0","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff254374d39e645630c35fac4fa2dee0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ca8b8850-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93a991b0-5c93-43e2-b8d7-1b9d74e25d32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.490371} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.598208,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ca8b8850-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ca8b8850-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ca8b8850-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling 200 11ms","method":"POST","requestID":"ca8b8850-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ca8d8420-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb5f1830-ceac-4614-983b-e7536d216528","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.5025392} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.516827,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ca8d8420-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ca8d8420-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ca8d8420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling 200 10ms","method":"POST","requestID":"ca8d8420-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o","level":"info","message":"auth send jwt","requestID":"0c3bc699e8a48ddc6406a371c22fa11c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c3bc699e8a48ddc6406a371c22fa11c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b6024ddc-245c-4598-bea1-130e08053eb4","requestID":"0c3bc699e8a48ddc6406a371c22fa11c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.913816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c3bc699e8a48ddc6406a371c22fa11c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049606,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0c3bc699e8a48ddc6406a371c22fa11c","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b6024ddc-245c-4598-bea1-130e08053eb4","requestID":"0c3bc699e8a48ddc6406a371c22fa11c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b6024ddc-245c-4598-bea1-130e08053eb4 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c3bc699e8a48ddc6406a371c22fa11c"} experiment-1 | {"level":"info","message":"GET /experiments/b6024ddc-245c-4598-bea1-130e08053eb4 200 21ms","method":"GET","requestID":"0c3bc699e8a48ddc6406a371c22fa11c","responseTime":21,"status":200,"url":"/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o","level":"info","message":"auth send jwt","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"713dc9434ee2d68dedaaddd8701f3e43","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b6024ddc-245c-4598-bea1-130e08053eb4","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.23645,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"713dc9434ee2d68dedaaddd8701f3e43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049606,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"713dc9434ee2d68dedaaddd8701f3e43","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Attempting to finish experiment","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.275356,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049606,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d","device":"4eba4233-5c56-485f-9b23-c11d339bd080","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"33d41be7-ce8d-439f-8742-6b689dc4e485","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/6340cade-357b-4b3c-9285-366a45f2484d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6340cade-357b-4b3c-9285-366a45f2484d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6340cade-357b-4b3c-9285-366a45f2484d': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6340cade-357b-4b3c-9285-366a45f2484d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"5db700b3-67d0-401f-9102-da30a4aebfa7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.8017406} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a885b9c0-6af2-4ab9-9b22-da7e6d6c3c10","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.802115} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79cd3f74dc1bed38ca58d85f725c0f67","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"79cd3f74dc1bed38ca58d85f725c0f67","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"}}},"level":"info","message":"received a callback","requestID":"79cd3f74dc1bed38ca58d85f725c0f67"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a481306fbb1866a07382ac4399917f80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a481306fbb1866a07382ac4399917f80","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/6340cade-357b-4b3c-9285-366a45f2484d 204 26ms","method":"DELETE","requestID":"cab8b2d0-793e-11ef-9733-5750b05365a5","responseTime":26,"status":204,"url":"/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6340cade-357b-4b3c-9285-366a45f2484d"}}},"level":"info","message":"received a callback","requestID":"a481306fbb1866a07382ac4399917f80"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"},"level":"info","message":"Successfully finished experiment","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cabf1b70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33d41be7-ce8d-439f-8742-6b689dc4e485","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"709b9fa3-bc22-4dc7-a59c-80bce47d9a09","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.8282995} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.697991,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cabf1b70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cabf1b70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cabf1b70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling 200 10ms","method":"POST","requestID":"cabf1b70-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/33d41be7-ce8d-439f-8742-6b689dc4e485/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cac11740-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6024ddc-245c-4598-bea1-130e08053eb4': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6024ddc-245c-4598-bea1-130e08053eb4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"89898578-2175-4f9f-8c68-bab06d742238","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.8363707} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"407a7a54-3a66-497a-9b31-a7a241f235a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.8366797} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"713dc9434ee2d68dedaaddd8701f3e43","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4eba4233-5c56-485f-9b23-c11d339bd080","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a518739-ec2c-4c91-8a60-f31bc2e3fba7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.841458} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.42211,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cac11740-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cac11740-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cac11740-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling 200 10ms","method":"POST","requestID":"cac11740-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/4eba4233-5c56-485f-9b23-c11d339bd080/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b6024ddc-245c-4598-bea1-130e08053eb4","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b6024ddc-245c-4598-bea1-130e08053eb4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"713dc9434ee2d68dedaaddd8701f3e43"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3317","request_time":"4.493","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"052819a4e6c5972a2b5fc5b6c29128c2"} experiment-1 | {"level":"info","message":"DELETE /experiments/b6024ddc-245c-4598-bea1-130e08053eb4 204 128ms","method":"DELETE","requestID":"713dc9434ee2d68dedaaddd8701f3e43","responseTime":128,"status":204,"url":"/experiments/b6024ddc-245c-4598-bea1-130e08053eb4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 88ms","method":"POST","requestID":"79cd3f74dc1bed38ca58d85f725c0f67","responseTime":88,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +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.091","http_referrer":"","http_user_agent":"node-fetch","requestID":"79cd3f74dc1bed38ca58d85f725c0f67"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 88ms","method":"POST","requestID":"a481306fbb1866a07382ac4399917f80","responseTime":88,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +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.090","http_referrer":"","http_user_agent":"node-fetch","requestID":"a481306fbb1866a07382ac4399917f80"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"3.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":"306736948748b1cd819140319d59b9a7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o","level":"info","message":"auth send jwt","requestID":"fd9decbac525d1a034c24e5990e4e5ed"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fd9decbac525d1a034c24e5990e4e5ed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.913739,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fd9decbac525d1a034c24e5990e4e5ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049606,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/33d41be7-ce8d-439f-8742-6b689dc4e485' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fa828eb4-5d57-400e-a711-b76ab62044c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9223754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4eba4233-5c56-485f-9b23-c11d339bd080' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf8c7710-519d-4e82-a050-6d762a010e6c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9276152} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e572b758-686e-4973-bc4a-6fd30a125b43","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9382763} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6cc99e5-2a98-45c9-8a85-cec82198f270","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9385483} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"785a18c5-7125-495d-ae8f-5922707b69cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9429579} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fd9decbac525d1a034c24e5990e4e5ed"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"fd9decbac525d1a034c24e5990e4e5ed","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd9decbac525d1a034c24e5990e4e5ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o","level":"info","message":"auth send jwt","requestID":"28a6c4c479fab7a505b8eae0830e3c7f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"28a6c4c479fab7a505b8eae0830e3c7f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.696064,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"28a6c4c479fab7a505b8eae0830e3c7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049606,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwNn0.-vYmr5ERdK_X7-dcnic8P2-fOXC0J5JhcH1QjqXZs6o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c92d195b-d77a-4e6d-8f85-4e4084ae23a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.966808} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"201219bc-1040-448b-8aed-498daeb617c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9733374} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2875e41e-3927-468b-b890-5286f42e4c44","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9887104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aef9d7d1-585e-4163-b3c4-ee99527e6b29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9889793} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"73974009-4e89-45a2-8f4b-3798fd3bdad6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049606.9932473} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"28a6c4c479fab7a505b8eae0830e3c7f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28a6c4c479fab7a505b8eae0830e3c7f"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"28a6c4c479fab7a505b8eae0830e3c7f","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwN30.bIGBdmC1l0R_6oFLbkNt5b9AXukbhv2uWebG291g_p4","level":"info","message":"auth send jwt","requestID":"2e2dd9398d702e39552835d5446d9147"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e2dd9398d702e39552835d5446d9147","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2e2dd9398d702e39552835d5446d9147"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2e2dd9398d702e39552835d5446d9147","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049607,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwN30.bIGBdmC1l0R_6oFLbkNt5b9AXukbhv2uWebG291g_p4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e2dd9398d702e39552835d5446d9147","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"f46244b0-7fda-4709-bb03-8412f717f765","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049607.4736001} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2e2dd9398d702e39552835d5446d9147","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7fea0fce-14d4-4d7c-911b-eb78b1bc8286","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049607.4793262} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2e2dd9398d702e39552835d5446d9147","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"acf26fa8-5b75-4258-9d61-440a97bdda9b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049607.4927685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e2dd9398d702e39552835d5446d9147","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2e2dd9398d702e39552835d5446d9147"} gateway-1 | {"time_local":"23/Sep/2024:00:00:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2e2dd9398d702e39552835d5446d9147"} device-1 | {"level":"info","message":"PATCH /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e 200 34ms","method":"PATCH","requestID":"2e2dd9398d702e39552835d5446d9147","responseTime":34,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwN30.bIGBdmC1l0R_6oFLbkNt5b9AXukbhv2uWebG291g_p4","level":"info","message":"auth send jwt","requestID":"9d7471234903099e28e1c5f75f6f2a14"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9d7471234903099e28e1c5f75f6f2a14","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9d7471234903099e28e1c5f75f6f2a14"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366931,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9d7471234903099e28e1c5f75f6f2a14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049607,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwN30.bIGBdmC1l0R_6oFLbkNt5b9AXukbhv2uWebG291g_p4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d7471234903099e28e1c5f75f6f2a14","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9d7471234903099e28e1c5f75f6f2a14"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/websocket 200 23ms","method":"POST","requestID":"9d7471234903099e28e1c5f75f6f2a14","responseTime":23,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9d7471234903099e28e1c5f75f6f2a14"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a2fcf0c823923f2694b6b79240404e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1a2fcf0c823923f2694b6b79240404e9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/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":"1a2fcf0c823923f2694b6b79240404e9"} device-1 | {"level":"info","message":"OPTIONS /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/websocket 200 1ms","method":"OPTIONS","requestID":"1a2fcf0c823923f2694b6b79240404e9","responseTime":1,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176855,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7"} device-1 | {"level":"info","message":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/websocket 200 23ms","method":"POST","requestID":"5c9bef9ede2e9057c84d906c3ddf1bf7","responseTime":23,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"028f717f0df444a60aef1c03dd311664","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"028f717f0df444a60aef1c03dd311664","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"028f717f0df444a60aef1c03dd311664"} device-1 | {"level":"info","message":"OPTIONS /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 1ms","method":"OPTIONS","requestID":"028f717f0df444a60aef1c03dd311664","responseTime":1,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"d63eabc316755316bd83b5a3d5e1e6aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d63eabc316755316bd83b5a3d5e1e6aa"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185237,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d63eabc316755316bd83b5a3d5e1e6aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"a464feb5-b40e-4a40-af85-bd000e450f4b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.1321084} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a45b145b-f39c-44e2-ada8-17af0d204d05","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.1397324} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"c9fde07d-1ba8-4735-aaf9-17ba4272c43f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.152154} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d63eabc316755316bd83b5a3d5e1e6aa"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d63eabc316755316bd83b5a3d5e1e6aa"} device-1 | {"level":"info","message":"PATCH /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 38ms","method":"PATCH","requestID":"d63eabc316755316bd83b5a3d5e1e6aa","responseTime":38,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"ee3a8b9681dfc5023025a73890cd37e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee3a8b9681dfc5023025a73890cd37e9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee3a8b9681dfc5023025a73890cd37e9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27344,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee3a8b9681dfc5023025a73890cd37e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ee3a8b9681dfc5023025a73890cd37e9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"7071e0d9-39ce-49a8-bba1-045c19dbdfd3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.1831875} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee3a8b9681dfc5023025a73890cd37e9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee3a8b9681dfc5023025a73890cd37e9"} device-1 | {"level":"info","message":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? 200 18ms","method":"GET","requestID":"ee3a8b9681dfc5023025a73890cd37e9","responseTime":18,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee3a8b9681dfc5023025a73890cd37e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"10775dae4fec96d80cf07ddbdf2b88b0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"10775dae4fec96d80cf07ddbdf2b88b0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10775dae4fec96d80cf07ddbdf2b88b0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214726,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"10775dae4fec96d80cf07ddbdf2b88b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10775dae4fec96d80cf07ddbdf2b88b0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"96f5dcaa-d855-4118-92fa-27ea376a3457","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.2076411} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"10775dae4fec96d80cf07ddbdf2b88b0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10775dae4fec96d80cf07ddbdf2b88b0"} device-1 | {"level":"info","message":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 17ms","method":"GET","requestID":"10775dae4fec96d80cf07ddbdf2b88b0","responseTime":17,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10775dae4fec96d80cf07ddbdf2b88b0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"f125053a5b4f6537143dfc7795dac00f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f125053a5b4f6537143dfc7795dac00f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f125053a5b4f6537143dfc7795dac00f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.841075,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f125053a5b4f6537143dfc7795dac00f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f125053a5b4f6537143dfc7795dac00f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to run experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to book experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully booked experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc339300-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc33ba10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276284,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc339300-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc339300-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849047,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc33ba10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cc33ba10-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"4f525724-8367-44d3-9e7d-07596c5f1cb7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.273491} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cc339300-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"6d1af198-64a0-4c68-bcf3-93de3950bf92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.278921} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc339300-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc33ba10-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? 200 16ms","method":"GET","requestID":"cc339300-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc33ba10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 17ms","method":"GET","requestID":"cc33ba10-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Setting up experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully set up experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc3f79e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91921,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully running experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738945,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26264f6d-7241-4b53-8f52-5cf3dbc3f54f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3478813} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"4072d7b0-a7c7-454a-9358-8fa270685368","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3504791} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.140037,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc3f79e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","rebac_allow":false,"scope_allow":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":"cc3f79e0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"638488d6-591d-4a3e-8b0e-c166c1f80f21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3525498} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc3f79e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling 200 16ms","method":"POST","requestID":"cc3f79e0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 19ms","method":"GET","requestID":"cc3f2bc0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? 200 21ms","method":"GET","requestID":"cc3f04b0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc426010-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc428720-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F06bc397f-4b61-4813-88b6-a06c83f3dfd6#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F06bc397f-4b61-4813-88b6-a06c83f3dfd6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"79a1c878-5f38-4472-a95d-e4f73804e79e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3624315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd56ece3-ac8b-49fd-ab85-ded2161bf694","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.362753} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f125053a5b4f6537143dfc7795dac00f","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.619527,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7195488c-5b40-4ff0-956d-b0dfefee891b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.365295} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc426010-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","rebac_allow":false,"scope_allow":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":"cc426010-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d66058bf-8313-46d7-b14e-86ca05af1266","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3693454} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.248677,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc426010-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc428720-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","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":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling 200 10ms","method":"POST","requestID":"cc426010-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cc428720-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f125053a5b4f6537143dfc7795dac00f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"f125053a5b4f6537143dfc7795dac00f","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc428720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling 200 13ms","method":"POST","requestID":"cc428720-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc44d110-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"7a4d56c2796cbf103fb405d21310742c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7a4d56c2796cbf103fb405d21310742c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a4d56c2796cbf103fb405d21310742c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743025,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7a4d56c2796cbf103fb405d21310742c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a4d56c2796cbf103fb405d21310742c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e71c914c-a3dd-487d-88dc-ca1f14f30f8b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.382131} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.493882,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc44d110-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","rebac_allow":false,"scope_allow":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":"cc44d110-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"4b62bcbe-3730-459d-8a6a-8fc08c264a8b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3864474} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc44d110-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling 200 10ms","method":"POST","requestID":"cc44d110-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a4d56c2796cbf103fb405d21310742c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc46cce0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a4d56c2796cbf103fb405d21310742c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a4d56c2796cbf103fb405d21310742c"} device-1 | {"level":"info","message":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? 200 13ms","method":"GET","requestID":"7a4d56c2796cbf103fb405d21310742c","responseTime":13,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.965707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc46cce0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc46cce0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827642,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY","level":"info","message":"auth send jwt","requestID":"1d817d069751b001d68342a7889324b6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1d817d069751b001d68342a7889324b6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d817d069751b001d68342a7889324b6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.938253660Z"}]},"request_id":"2a908737-f635-47a6-8d43-2693442def5b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.3989093} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc46cce0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"f1e59f9c-ae7e-429f-91de-666de88bf4dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4000404} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715248,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1d817d069751b001d68342a7889324b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d817d069751b001d68342a7889324b6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc46cce0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e? 200 16ms","method":"GET","requestID":"cc46cce0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 15ms","method":"GET","requestID":"cc46f3f0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:06.988686370Z"}]},"request_id":"6138889a-8bb5-4b80-af23-d4a2c889f86c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4070604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1d817d069751b001d68342a7889324b6","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Building connection plan","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"f88338ef-71fa-4729-a994-baaa7c7c669b"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"f19f5dfa-f112-434b-8367-71fa009bb1b6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"d5ac5cf0-202f-4f8b-9d0b-af7624298dbe"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f125053a5b4f6537143dfc7795dac00f"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f125053a5b4f6537143dfc7795dac00f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d817d069751b001d68342a7889324b6"} gateway-1 | {"time_local":"23/Sep/2024:00:00:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d817d069751b001d68342a7889324b6"} device-1 | {"level":"info","message":"GET /devices/0b58d3fa-1597-467b-b1e2-ef25de088038? 200 13ms","method":"GET","requestID":"1d817d069751b001d68342a7889324b6","responseTime":13,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.739395,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc49b310-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049609,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYwOX0.c2z0RtbCWu7IvXeMLGZqbgjwBAqXIPoNab4zegTiSVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cc49b310-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a8bd2628-0826-4d23-ac96-f18eb9c2456d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4206858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10bc347a-6877-4b0d-8078-3567b9e718a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4208698} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cc49b310-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8'","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8'","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cc49b310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"cc49b310-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"cc49b310-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f125053a5b4f6537143dfc7795dac00f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc51c960-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c5b4e97-ff7d-43ff-b4c1-fb27b44d998c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4671385} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.81406,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc51c960-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","rebac_allow":false,"scope_allow":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":"cc51c960-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc51c960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling 200 11ms","method":"POST","requestID":"cc51c960-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 850058723483772498 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:QgND\r\na=ice-pwd:CCP0gerwvgTZpTmpWlv6L9Y8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7B:16:A0:77:E8:76:D0:A1:08:EF:82:8E:49:1E:47:2B:A6:2C:B7:61:F5:B9:94:51:E9:50:28:2B:3C:53:FE:33\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc541350-793e-11ef-9733-5750b05365a5"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038'"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53f08775-47f0-4c0f-bad1-18edc4d5353c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049609.4816504} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.296274,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cc541350-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc541350-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc541350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling 200 8ms","method":"POST","requestID":"cc541350-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling"} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/34126d6e-47d6-4443-8424-04be3e2149a8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"72c3490cee3f486f7266279a5bc446fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"72c3490cee3f486f7266279a5bc446fb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"}}},"level":"info","message":"received a callback","requestID":"72c3490cee3f486f7266279a5bc446fb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"72c3490cee3f486f7266279a5bc446fb","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"72c3490cee3f486f7266279a5bc446fb"} device-1 | {"content":{"candidate":"candidate:219484351 1 udp 2113937151 7ddd8142-b7dc-4aa6-83bf-a4cb145853b5.local 34776 typ host generation 0 ufrag QgND network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2654908844 1 udp 1677729535 141.24.211.56 34776 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag QgND network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:538053214 1 udp 33562623 141.24.210.113 64976 typ relay raddr 141.24.211.56 rport 34776 generation 0 ufrag QgND network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","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/0b58d3fa-1597-467b-b1e2-ef25de088038'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038'"} device-1 | {"data":{"peerconnection":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"34126d6e-47d6-4443-8424-04be3e2149a8","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/34126d6e-47d6-4443-8424-04be3e2149a8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3173a6d693f3f790e47fd76be314e786","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3173a6d693f3f790e47fd76be314e786","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"}}},"level":"info","message":"received a callback","requestID":"3173a6d693f3f790e47fd76be314e786"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cd937120-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F34126d6e-47d6-4443-8424-04be3e2149a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ceaf7b0-c0fd-45f0-8cb3-6286864d83af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.5757003} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.696041,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cd937120-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd937120-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cd937120-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8 200 10ms","method":"GET","requestID":"cd937120-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"3173a6d693f3f790e47fd76be314e786","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"3173a6d693f3f790e47fd76be314e786"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd97ddf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3e7fd42-a1a9-4673-b111-c4fd9c6caebd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.603612} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.468719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cd97ddf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","rebac_allow":false,"scope_allow":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":"cd97ddf0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd97ddf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling 200 10ms","method":"POST","requestID":"cd97ddf0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd99b2b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"016e66b0-da26-4e1d-9153-909bce82b95c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.617133} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.334771,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cd99b2b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","rebac_allow":false,"scope_allow":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":"cd99b2b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd99b2b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling 200 11ms","method":"POST","requestID":"cd99b2b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs","level":"info","message":"auth send jwt","requestID":"75f332b51886abf473ee8fb0f08b13db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"75f332b51886abf473ee8fb0f08b13db","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","requestID":"75f332b51886abf473ee8fb0f08b13db"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.155627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"75f332b51886abf473ee8fb0f08b13db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049611,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75f332b51886abf473ee8fb0f08b13db","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","requestID":"75f332b51886abf473ee8fb0f08b13db"} gateway-1 | {"time_local":"23/Sep/2024:00:00:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"75f332b51886abf473ee8fb0f08b13db"} experiment-1 | {"level":"info","message":"GET /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6 200 16ms","method":"GET","requestID":"75f332b51886abf473ee8fb0f08b13db","responseTime":16,"status":200,"url":"/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs","level":"info","message":"auth send jwt","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d3c295f661e7ebf9082fb5fcd0519999","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.250021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d3c295f661e7ebf9082fb5fcd0519999","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049611,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3c295f661e7ebf9082fb5fcd0519999","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Attempting to finish experiment","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cdb948a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.234927,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cdb948a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049611,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cdb948a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8","device":"0b58d3fa-1597-467b-b1e2-ef25de088038","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bdfc1f79-7695-422e-aee8-b15d0e999b0e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/34126d6e-47d6-4443-8424-04be3e2149a8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F34126d6e-47d6-4443-8424-04be3e2149a8': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F34126d6e-47d6-4443-8424-04be3e2149a8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0dd226e4-5328-4c47-89f7-3f036d0f2996","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.8419595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1586d3cb-4acf-4bd3-836c-8686ddeeec40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.842328} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c80dbaf0be91377d26ba43c905c336f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c80dbaf0be91377d26ba43c905c336f3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"cdb948a0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ffba97b2d1ace92777b996fb783ee532","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"}}},"level":"info","message":"received a callback","requestID":"c80dbaf0be91377d26ba43c905c336f3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ffba97b2d1ace92777b996fb783ee532","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"}}},"level":"info","message":"received a callback","requestID":"ffba97b2d1ace92777b996fb783ee532"} device-1 | {"data":{"peerconnection":"34126d6e-47d6-4443-8424-04be3e2149a8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cdb948a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8 204 45ms","method":"DELETE","requestID":"cdb948a0-793e-11ef-9733-5750b05365a5","responseTime":45,"status":204,"url":"/peerconnections/34126d6e-47d6-4443-8424-04be3e2149a8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"},"level":"info","message":"Successfully finished experiment","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cdc30ca0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdfc1f79-7695-422e-aee8-b15d0e999b0e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ec73f37-c7ad-4f60-a045-98125a0c566d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.8885942} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.448082,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cdc30ca0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e","object_type":"device","rebac_allow":false,"scope_allow":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":"cdc30ca0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cdc30ca0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling 200 11ms","method":"POST","requestID":"cdc30ca0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F06bc397f-4b61-4813-88b6-a06c83f3dfd6': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F06bc397f-4b61-4813-88b6-a06c83f3dfd6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"be8ff14c-910d-4a3f-ac90-cc13c20635dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.89667} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cdc52f80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6134aaa-e691-4050-855b-72887f6387e7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.8970652} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d3c295f661e7ebf9082fb5fcd0519999","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0b58d3fa-1597-467b-b1e2-ef25de088038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"552a9b8f-e734-4e0e-b242-b46f6239f2da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.902048} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.024613,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cdc52f80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038","object_type":"device","rebac_allow":false,"scope_allow":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":"cdc52f80-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cdc52f80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling 200 11ms","method":"POST","requestID":"cdc52f80-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/0b58d3fa-1597-467b-b1e2-ef25de088038/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} gateway-1 | {"time_local":"23/Sep/2024:00:00:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3c295f661e7ebf9082fb5fcd0519999"} gateway-1 | {"time_local":"23/Sep/2024:00:00:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3315","request_time":"4.438","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"77d01b35295a9b5568ff22a0507956b3"} experiment-1 | {"level":"info","message":"DELETE /experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6 204 163ms","method":"DELETE","requestID":"d3c295f661e7ebf9082fb5fcd0519999","responseTime":163,"status":204,"url":"/experiments/06bc397f-4b61-4813-88b6-a06c83f3dfd6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"c80dbaf0be91377d26ba43c905c336f3","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"c80dbaf0be91377d26ba43c905c336f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"ffba97b2d1ace92777b996fb783ee532","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"ffba97b2d1ace92777b996fb783ee532"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs","level":"info","message":"auth send jwt","requestID":"59a1ba34a678397883daecd138972e11"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"59a1ba34a678397883daecd138972e11","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"59a1ba34a678397883daecd138972e11"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:11Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"2.906","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":"f46e3e41e2b871b7280baf353582044a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.429307,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:11Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bdfc1f79-7695-422e-aee8-b15d0e999b0e' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"59a1ba34a678397883daecd138972e11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049611,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMX0.dzfdI6wlYGzKiqMbI_ZyYvtdJ7LPoTQzHOzO55CDeIs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0b58d3fa-1597-467b-b1e2-ef25de088038' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b0850821-9e6f-4f9a-9d86-0bdd40c8e9de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049611.9969091} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c0e6413-1ba8-4153-bd0e-a10aed68a0ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.0027828} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ebb1d8ec-a01b-47a5-b885-1ad347b29dad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.014245} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2866900-c649-4cb0-aafb-2c18d207932c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.014503} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"2c5d9c37-d819-48c3-998c-cda0fcedd5a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.021285} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"59a1ba34a678397883daecd138972e11"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59a1ba34a678397883daecd138972e11"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"59a1ba34a678397883daecd138972e11","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"9a7a191cbe530bada5f8600f2bbe63b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a7a191cbe530bada5f8600f2bbe63b1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.779768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9a7a191cbe530bada5f8600f2bbe63b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f59397a9-636c-4c5c-9f3c-4d0c34c8423c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.0527685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4e2ffc4-651c-46ee-a519-e22f5eb60584","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.058317} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"84391431-2ee6-4793-8196-1bdfdf91d39e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.074035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d627b57-7a4d-44a2-97cf-958504f62beb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.07431} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"928f41c6-8041-4725-a870-2159c00bf50d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.0782208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a7a191cbe530bada5f8600f2bbe63b1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a7a191cbe530bada5f8600f2bbe63b1"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"9a7a191cbe530bada5f8600f2bbe63b1","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"1819eb30a58ae5f5eeae631e9c58bb26"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"d880eceaf983c0f268b3abc4e641ad09"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1819eb30a58ae5f5eeae631e9c58bb26"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d880eceaf983c0f268b3abc4e641ad09","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d880eceaf983c0f268b3abc4e641ad09"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.751539,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1819eb30a58ae5f5eeae631e9c58bb26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681577,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d880eceaf983c0f268b3abc4e641ad09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d880eceaf983c0f268b3abc4e641ad09","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"adf70c1a-3bf5-47c5-8f5b-96a70ab6c613","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.55911} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"e674ad1b-3b7c-4143-93aa-e16fd539d5a4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.5596821} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d880eceaf983c0f268b3abc4e641ad09","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8568c4a3-06d6-471f-87f5-46c1e7eedfae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.5633168} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02a4a468-bd1e-4822-9f32-41e5cab31aba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.56438} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"d880eceaf983c0f268b3abc4e641ad09","responseTime":2,"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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"4e318512-f984-4cf0-a2c4-d25afe1f205c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.5678139} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d880eceaf983c0f268b3abc4e641ad09","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d880eceaf983c0f268b3abc4e641ad09"} device-1 | {"level":"info","message":"PATCH /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb 200 22ms","method":"PATCH","requestID":"d880eceaf983c0f268b3abc4e641ad09","responseTime":22,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d880eceaf983c0f268b3abc4e641ad09"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"fc2fd86bbc69d682f193190d575ccc27"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fc2fd86bbc69d682f193190d575ccc27","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fc2fd86bbc69d682f193190d575ccc27"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611993,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc2fd86bbc69d682f193190d575ccc27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fc2fd86bbc69d682f193190d575ccc27","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"2316750c-959f-4acd-8851-6043159ff732","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.5779088} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1819eb30a58ae5f5eeae631e9c58bb26"} device-1 | {"level":"info","message":"PATCH /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62 200 34ms","method":"PATCH","requestID":"1819eb30a58ae5f5eeae631e9c58bb26","responseTime":34,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1819eb30a58ae5f5eeae631e9c58bb26"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"d7036f017fb6d3c7fcedf412d31495c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d7036f017fb6d3c7fcedf412d31495c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d7036f017fb6d3c7fcedf412d31495c4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fc2fd86bbc69d682f193190d575ccc27"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76738,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fc2fd86bbc69d682f193190d575ccc27"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/websocket 200 15ms","method":"POST","requestID":"fc2fd86bbc69d682f193190d575ccc27","responseTime":15,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7036f017fb6d3c7fcedf412d31495c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7036f017fb6d3c7fcedf412d31495c4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d7036f017fb6d3c7fcedf412d31495c4"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/websocket 200 16ms","method":"POST","requestID":"d7036f017fb6d3c7fcedf412d31495c4","responseTime":16,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d7036f017fb6d3c7fcedf412d31495c4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"60f792f56264177614084d1d44e9f570"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"60f792f56264177614084d1d44e9f570","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60f792f56264177614084d1d44e9f570"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676345,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"60f792f56264177614084d1d44e9f570","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60f792f56264177614084d1d44e9f570","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"77e52fdb-9f8a-41f4-a190-b1b75ddcc0ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.6252418} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60f792f56264177614084d1d44e9f570","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60f792f56264177614084d1d44e9f570"} device-1 | {"level":"info","message":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? 200 11ms","method":"GET","requestID":"60f792f56264177614084d1d44e9f570","responseTime":11,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60f792f56264177614084d1d44e9f570"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.966411,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9fcb7af5ba1556d4077c4acc2a72aebc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"a9a0c357-355d-4b09-aa7f-0dd4c724eadb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.6412816} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc"} device-1 | {"level":"info","message":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? 200 13ms","method":"GET","requestID":"9fcb7af5ba1556d4077c4acc2a72aebc","responseTime":13,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"7144380e0783e8fa74125c34738c0d9b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7144380e0783e8fa74125c34738c0d9b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7144380e0783e8fa74125c34738c0d9b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.005306,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7144380e0783e8fa74125c34738c0d9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7144380e0783e8fa74125c34738c0d9b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to run experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to book experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully booked experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce3e3010-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.593414,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73667,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce3e3010-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce3e3010-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"5a76848b-5653-4d9a-9657-cc4d8e8f83a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.6951559} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"630ba9c8-7d1a-4bbc-b03a-37825c37d9bf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.6958377} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce3e3010-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? 200 15ms","method":"GET","requestID":"ce3de1f0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce3e3010-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? 200 14ms","method":"GET","requestID":"ce3e3010-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Setting up experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully set up experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4709b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4757d0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully running experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce47cd00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.544984,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce4709b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce4709b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854239,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce4757d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ce4757d0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"505beefa-7533-41b5-ab06-376b6a077a3e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7598295} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.882084,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce47cd00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","rebac_allow":false,"scope_allow":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":"ce47cd00-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"5574f9de-32a0-4f54-a68f-be1d083dcb24","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7630422} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ce4709b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"2c102ba9-a47a-4baa-9b4d-6ecf5f5cd0c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7661204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce4757d0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce47cd00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling 200 17ms","method":"POST","requestID":"ce47cd00-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce4b4f70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F127568d9-324e-487f-8e24-4dac681f12e1#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F127568d9-324e-487f-8e24-4dac681f12e1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"99e257cc-6c7e-4d4b-9b59-ecd5fe8fc9c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7762442} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0bdd95bc-f565-4529-ad5b-fabfda6b9660","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7765224} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4709b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? 200 30ms","method":"GET","requestID":"ce4709b0-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4757d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? 200 30ms","method":"GET","requestID":"ce4757d0-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"7144380e0783e8fa74125c34738c0d9b","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbdfee5c-14a2-4ffb-a20b-ed683cf2ffb1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7813523} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107911,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce4c60e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce4b4f70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","rebac_allow":false,"scope_allow":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":"ce4b4f70-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce4b4f70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling 200 12ms","method":"POST","requestID":"ce4b4f70-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e368e2f2-ffd7-4e36-a9ee-691bac6314bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.7875516} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.039431,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce4c60e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce4c60e0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce4c60e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling 200 11ms","method":"POST","requestID":"ce4c60e0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"7144380e0783e8fa74125c34738c0d9b","responseTime":142,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce4e83c0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"8be50e36e06c9e192da915202297ae55"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8be50e36e06c9e192da915202297ae55","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8be50e36e06c9e192da915202297ae55"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ce6b54b1-191f-4c5b-b5a0-1307a90a83a2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8013887} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.54249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce4e83c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce4e83c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.41823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8be50e36e06c9e192da915202297ae55","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8be50e36e06c9e192da915202297ae55","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce4e83c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling 200 12ms","method":"POST","requestID":"ce4e83c0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"71d19111-e58d-40f7-a0c4-f16532114036","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8082798} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8be50e36e06c9e192da915202297ae55","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8be50e36e06c9e192da915202297ae55"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645508,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8be50e36e06c9e192da915202297ae55"} device-1 | {"level":"info","message":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? 200 16ms","method":"GET","requestID":"8be50e36e06c9e192da915202297ae55","responseTime":16,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:46296","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.048189,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4","level":"info","message":"auth send jwt","requestID":"09e70373e57b2a8814957934d9e64911"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.014217144Z"}]},"request_id":"6715076e-c8f5-46fa-8b75-b9f4551a86f0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8193493} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"09e70373e57b2a8814957934d9e64911","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"1b62f1f6-fee0-4f1c-9466-d62000143782","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.820238} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09e70373e57b2a8814957934d9e64911"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71136,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09e70373e57b2a8814957934d9e64911","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"09e70373e57b2a8814957934d9e64911","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb? 200 15ms","method":"GET","requestID":"ce50cdb0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? 200 15ms","method":"GET","requestID":"ce50f4c0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:12.074009372Z"}]},"request_id":"bf91c7ee-121f-4307-a65d-f6d7087f0055","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8272586} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09e70373e57b2a8814957934d9e64911","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Building connection plan","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"50a4a1c6-278e-47b6-8ffb-ad0386c9e16d"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"f943ea90-2974-4862-a276-fdc78adb6ec8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"20a0ad58-223e-4774-bd7a-6049389fe358"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7144380e0783e8fa74125c34738c0d9b"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09e70373e57b2a8814957934d9e64911"} device-1 | {"level":"info","message":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? 200 11ms","method":"GET","requestID":"09e70373e57b2a8814957934d9e64911","responseTime":11,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09e70373e57b2a8814957934d9e64911"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.752634,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049612,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxMn0.fvTk5k6-h8g1_LV57iZ48Bd3vMaIz2asFx38XVb7js4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"eb56b39f-fe02-47da-ac2e-8c7cac727308","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8408184} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bdda2c3-96d4-44c1-9b33-2ba2a8aaf7c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8409815} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc'","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc'","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"ce53b3e0-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"ce53b3e0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7144380e0783e8fa74125c34738c0d9b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce5b5500-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a913e98c-7419-424e-872c-686b80f57806","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8849807} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.311229,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce5b5500-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce5b5500-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce5b5500-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling 200 9ms","method":"POST","requestID":"ce5b5500-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce5d02b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4add5180-c8ae-4c69-a9b4-25636735298e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049612.8968494} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.52409,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ce5d02b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","rebac_allow":false,"scope_allow":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":"ce5d02b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce5d02b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling 200 10ms","method":"POST","requestID":"ce5d02b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling"} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"daef798601e6771030961f2cc3a37b04","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"daef798601e6771030961f2cc3a37b04","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"}}},"level":"info","message":"received a callback","requestID":"daef798601e6771030961f2cc3a37b04"} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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":"daef798601e6771030961f2cc3a37b04","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"daef798601e6771030961f2cc3a37b04"} device-1 | {"data":{"peerconnection":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","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/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04aa07afbc920ff63e5ad9c52a5bb03c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"04aa07afbc920ff63e5ad9c52a5bb03c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"}}},"level":"info","message":"received a callback","requestID":"04aa07afbc920ff63e5ad9c52a5bb03c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cf9b4f10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04f8abd2-6863-4d99-b95a-18a3e9f2f399","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049614.985536} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":5.055041,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cf9b4f10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","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":"cf9b4f10-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cf9b4f10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc 200 15ms","method":"GET","requestID":"cf9b4f10-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"04aa07afbc920ff63e5ad9c52a5bb03c","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"04aa07afbc920ff63e5ad9c52a5bb03c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfa0cd50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fed3a7f9-447f-431f-aeee-13a5b407f511","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.0185513} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.706858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cfa0cd50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","rebac_allow":false,"scope_allow":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":"cfa0cd50-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfa0cd50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling 200 11ms","method":"POST","requestID":"cfa0cd50-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfa2c920-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a39c0c9-23b9-445e-9413-3d89de727aa2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.0305266} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.328737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cfa2c920-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfa2c920-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfa2c920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling 200 9ms","method":"POST","requestID":"cfa2c920-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY","level":"info","message":"auth send jwt","requestID":"08d6bf205506718e2ecef1a2fc627610"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"08d6bf205506718e2ecef1a2fc627610","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/127568d9-324e-487f-8e24-4dac681f12e1","requestID":"08d6bf205506718e2ecef1a2fc627610"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.180357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"08d6bf205506718e2ecef1a2fc627610","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049615,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"08d6bf205506718e2ecef1a2fc627610","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/127568d9-324e-487f-8e24-4dac681f12e1","requestID":"08d6bf205506718e2ecef1a2fc627610"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/127568d9-324e-487f-8e24-4dac681f12e1 HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08d6bf205506718e2ecef1a2fc627610"} experiment-1 | {"level":"info","message":"GET /experiments/127568d9-324e-487f-8e24-4dac681f12e1 200 17ms","method":"GET","requestID":"08d6bf205506718e2ecef1a2fc627610","responseTime":17,"status":200,"url":"/experiments/127568d9-324e-487f-8e24-4dac681f12e1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY","level":"info","message":"auth send jwt","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8c99baf3c7fa402948da7a154d16c4b5","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/127568d9-324e-487f-8e24-4dac681f12e1","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.374323,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8c99baf3c7fa402948da7a154d16c4b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049615,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c99baf3c7fa402948da7a154d16c4b5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Attempting to finish experiment","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.152616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049615,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c04d960f-5070-4a3b-b677-5bdf881e39cb","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7bb030eb-2319-4ebf-84b1-ed24a25d6b62","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F27a0c38b-51d0-41ec-b00c-d1a1aae0abcc': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F27a0c38b-51d0-41ec-b00c-d1a1aae0abcc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"e0da49fc-f115-431d-a9bc-d78ac7f2bf6f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.2526548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5d290bf-3827-4278-80fa-ed500d1c7ad9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.2531397} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4efd0074cae3c154464c115072ba6f29","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 8ms","method":"POST","requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4efd0074cae3c154464c115072ba6f29","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fde451ba42e9525a5a8b4b9ee11bd664","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"}}},"level":"info","message":"received a callback","requestID":"4efd0074cae3c154464c115072ba6f29"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fde451ba42e9525a5a8b4b9ee11bd664","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"}}},"level":"info","message":"received a callback","requestID":"fde451ba42e9525a5a8b4b9ee11bd664"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc 204 44ms","method":"DELETE","requestID":"cfc1e9e0-793e-11ef-9733-5750b05365a5","responseTime":44,"status":204,"url":"/peerconnections/27a0c38b-51d0-41ec-b00c-d1a1aae0abcc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/127568d9-324e-487f-8e24-4dac681f12e1"},"level":"info","message":"Successfully finished experiment","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfcb38b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7bb030eb-2319-4ebf-84b1-ed24a25d6b62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"710a52f5-a840-4710-9f6f-d1a1a21660df","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.2980146} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.571089,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cfcb38b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62","object_type":"device","rebac_allow":false,"scope_allow":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":"cfcb38b0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfcb38b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling 200 11ms","method":"POST","requestID":"cfcb38b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F127568d9-324e-487f-8e24-4dac681f12e1': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F127568d9-324e-487f-8e24-4dac681f12e1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"8c99c391-a258-4e89-a42d-52794dbf8910","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.3039865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b2d0a97-6c41-4c78-af9f-e63966839518","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.3043804} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfcd5b90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8c99baf3c7fa402948da7a154d16c4b5","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc04d960f-5070-4a3b-b677-5bdf881e39cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87d8c12b-045e-4fe5-a7cd-c678bdae1eaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.3105936} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.197001,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cfcd5b90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb","object_type":"device","rebac_allow":false,"scope_allow":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":"cfcd5b90-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfcd5b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling 200 10ms","method":"POST","requestID":"cfcd5b90-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/127568d9-324e-487f-8e24-4dac681f12e1","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/127568d9-324e-487f-8e24-4dac681f12e1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c99baf3c7fa402948da7a154d16c4b5"} experiment-1 | {"level":"info","message":"DELETE /experiments/127568d9-324e-487f-8e24-4dac681f12e1 204 152ms","method":"DELETE","requestID":"8c99baf3c7fa402948da7a154d16c4b5","responseTime":152,"status":204,"url":"/experiments/127568d9-324e-487f-8e24-4dac681f12e1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.763","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d954f9edd7c42510491a565646f417d1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.777","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7c61e802b66779a634885d7991554468"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"4efd0074cae3c154464c115072ba6f29","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"4efd0074cae3c154464c115072ba6f29"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"fde451ba42e9525a5a8b4b9ee11bd664","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"fde451ba42e9525a5a8b4b9ee11bd664"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY","level":"info","message":"auth send jwt","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c04d960f-5070-4a3b-b677-5bdf881e39cb' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.776776,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049615,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7bb030eb-2319-4ebf-84b1-ed24a25d6b62' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8869e771-5cdc-426d-a863-db1e48af6e92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4001718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d817ab52-3959-450b-95a1-de8252eda8cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4060974} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"22bff82e-c351-4182-8bfe-66197a49b9ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4171221} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee74f424-e368-4442-80ef-3eb90553619a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4173503} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"5a242ead-2173-4458-998c-9ee057384dbd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.422184} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"caf15cdb5149f8d3e9ab78552a4ee13d","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY","level":"info","message":"auth send jwt","requestID":"787cf5dff519c9db010fe874eec2550d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"787cf5dff519c9db010fe874eec2550d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"787cf5dff519c9db010fe874eec2550d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.781387,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"787cf5dff519c9db010fe874eec2550d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049615,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxNX0.iED3Dof5FrDatlEVZAZhMHuOXtzD0FvFCYTGMnhZIuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7ec6b2a6-636c-447a-bae6-aa13dc0055f1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4472115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e61bdb9-a8d2-4d42-b7e6-8499378f87c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4527533} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6b2aa384-c351-4ef3-a065-00ddf06c4b04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4701965} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0930c7df-ce61-40df-ae9c-6a63d818feea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4702864} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"acbb7ed3-3404-4c2b-9af1-546b7733300f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049615.4757502} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"787cf5dff519c9db010fe874eec2550d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"787cf5dff519c9db010fe874eec2550d"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"787cf5dff519c9db010fe874eec2550d","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c7c4e85e827fabe8eebf7529de6e356","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6c7c4e85e827fabe8eebf7529de6e356","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/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":"6c7c4e85e827fabe8eebf7529de6e356"} device-1 | {"level":"info","message":"OPTIONS /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/websocket 200 1ms","method":"OPTIONS","requestID":"6c7c4e85e827fabe8eebf7529de6e356","responseTime":2,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09072bebb23811884091a213478ec892","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"09072bebb23811884091a213478ec892","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/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":"09072bebb23811884091a213478ec892"} device-1 | {"level":"info","message":"OPTIONS /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/websocket 200 1ms","method":"OPTIONS","requestID":"09072bebb23811884091a213478ec892","responseTime":1,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"206a438f990320e64fd1dcf21ce38c09"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"206a438f990320e64fd1dcf21ce38c09","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"206a438f990320e64fd1dcf21ce38c09"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.183679,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"56b26be4c3947c13a2ccb1609e8dda0d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"56b26be4c3947c13a2ccb1609e8dda0d","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"206a438f990320e64fd1dcf21ce38c09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"206a438f990320e64fd1dcf21ce38c09","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"56b26be4c3947c13a2ccb1609e8dda0d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.780174,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"56b26be4c3947c13a2ccb1609e8dda0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"56b26be4c3947c13a2ccb1609e8dda0d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"206a438f990320e64fd1dcf21ce38c09"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/websocket 200 29ms","method":"POST","requestID":"206a438f990320e64fd1dcf21ce38c09","responseTime":29,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.038","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":"206a438f990320e64fd1dcf21ce38c09"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"56b26be4c3947c13a2ccb1609e8dda0d"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/websocket 200 34ms","method":"POST","requestID":"56b26be4c3947c13a2ccb1609e8dda0d","responseTime":34,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","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":"56b26be4c3947c13a2ccb1609e8dda0d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cebe484241d7895f5a2bd256c3850e3a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cebe484241d7895f5a2bd256c3850e3a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"cebe484241d7895f5a2bd256c3850e3a"} device-1 | {"level":"info","message":"OPTIONS /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 0ms","method":"OPTIONS","requestID":"cebe484241d7895f5a2bd256c3850e3a","responseTime":0,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3050084cd98cbf272f249a1245d9d502","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3050084cd98cbf272f249a1245d9d502","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"3050084cd98cbf272f249a1245d9d502"} device-1 | {"level":"info","message":"OPTIONS /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 1ms","method":"OPTIONS","requestID":"3050084cd98cbf272f249a1245d9d502","responseTime":1,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"dbf156b7b527186821ad4663717d746f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dbf156b7b527186821ad4663717d746f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dbf156b7b527186821ad4663717d746f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.035993,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"6d8de039f7cfaf3f5f84d3229cae025c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dbf156b7b527186821ad4663717d746f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dbf156b7b527186821ad4663717d746f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6d8de039f7cfaf3f5f84d3229cae025c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716084,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6d8de039f7cfaf3f5f84d3229cae025c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"a621a1e9-9638-4274-b08e-f1cdc5836374","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6075244} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dbf156b7b527186821ad4663717d746f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d913f535-b7b6-46a0-8b13-df7ee1809670","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6131046} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dbf156b7b527186821ad4663717d746f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"eadcebf9-cf6f-47a9-8069-3f07e0e22a32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6156611} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2e20aa5-ae08-469c-a712-213d202df6c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6204193} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"7cfaf4be-523f-4b6c-844f-443b13650749","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6302824} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dbf156b7b527186821ad4663717d746f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dbf156b7b527186821ad4663717d746f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dbf156b7b527186821ad4663717d746f"} device-1 | {"level":"info","message":"PATCH /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 38ms","method":"PATCH","requestID":"dbf156b7b527186821ad4663717d746f","responseTime":38,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"a989ae1b-b4fa-41f5-bec8-b7f3270be6a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6443558} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6d8de039f7cfaf3f5f84d3229cae025c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.052","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":"6d8de039f7cfaf3f5f84d3229cae025c"} device-1 | {"level":"info","message":"PATCH /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 45ms","method":"PATCH","requestID":"6d8de039f7cfaf3f5f84d3229cae025c","responseTime":45,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"360c6e70144efc7b4f0b44f891aa6ca5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"360c6e70144efc7b4f0b44f891aa6ca5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"360c6e70144efc7b4f0b44f891aa6ca5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.228955,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"360c6e70144efc7b4f0b44f891aa6ca5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"360c6e70144efc7b4f0b44f891aa6ca5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"e11679cb-0412-4865-9d37-8749a1883a62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.6686318} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"360c6e70144efc7b4f0b44f891aa6ca5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"360c6e70144efc7b4f0b44f891aa6ca5"} device-1 | {"level":"info","message":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 14ms","method":"GET","requestID":"360c6e70144efc7b4f0b44f891aa6ca5","responseTime":14,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"360c6e70144efc7b4f0b44f891aa6ca5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"4a93265eb8f5a029de73dbe36019b401"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a93265eb8f5a029de73dbe36019b401","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a93265eb8f5a029de73dbe36019b401"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4a93265eb8f5a029de73dbe36019b401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4a93265eb8f5a029de73dbe36019b401","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"9035ce6f-79ff-4bfc-8eba-2afd0fa675a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.685537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a93265eb8f5a029de73dbe36019b401","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a93265eb8f5a029de73dbe36019b401"} device-1 | {"level":"info","message":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 13ms","method":"GET","requestID":"4a93265eb8f5a029de73dbe36019b401","responseTime":13,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a93265eb8f5a029de73dbe36019b401"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.699949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to run experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to book experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully booked experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d140c1b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d1410fd0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.593984,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d140c1b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d140c1b0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.49357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1410fd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d1410fd0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"293ffa77-759b-40f1-b0f7-9545bd0dae70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.7475448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d140c1b0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d140c1b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"b73e1300-7ca3-4470-9b60-b0d4b4c94589","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.751186} device-1 | {"level":"info","message":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 12ms","method":"GET","requestID":"d140c1b0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d1410fd0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d1410fd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 15ms","method":"GET","requestID":"d1410fd0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Setting up experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully set up experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d14b9720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d14bbe30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d14c0c50-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully running experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735897,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d14b9720-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d14b9720-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.589534,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d14bbe30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d14bbe30-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.544252,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"bd1f06be-8a7a-4214-a119-8e9a9fcb1ff5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8211823} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50234cbb-8534-4496-a75c-e1b3f86976c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8213122} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d14b9720-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d14c0c50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","rebac_allow":false,"scope_allow":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":"d14c0c50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"d09531c6-2e97-4e33-bfa4-8d7224cae5ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8222666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d14bbe30-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d14b9720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 17ms","method":"GET","requestID":"d14b9720-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d14c0c50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling 200 15ms","method":"POST","requestID":"d14c0c50-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d14bbe30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 17ms","method":"GET","requestID":"d14bbe30-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d14ecb70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d14ef280-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3daf2b52-b990-42a6-8d5f-9c2144372da0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3daf2b52-b990-42a6-8d5f-9c2144372da0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2184f38e-44d0-4918-b1ca-970d13ae1a01","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8336675} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a7cf440-cd90-4cd3-a496-12a215e545e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8338318} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ea38528-b112-46ec-949a-4f73b13106b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8367517} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.989682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d14ecb70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","rebac_allow":false,"scope_allow":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":"d14ecb70-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6963efa-811a-4789-bdfd-a6b4365f3e01","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8388996} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.616848,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d14ef280-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","rebac_allow":false,"scope_allow":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":"d14ef280-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d14ecb70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling 200 14ms","method":"POST","requestID":"d14ecb70-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5","responseTime":148,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d14ef280-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling 200 15ms","method":"POST","requestID":"d14ef280-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1518a90-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"777d230276d2a17a8411ebedca00834d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"777d230276d2a17a8411ebedca00834d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"777d230276d2a17a8411ebedca00834d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3344db65-0a37-4a0f-8bde-2cecbc8fe0c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8549619} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.753296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"777d230276d2a17a8411ebedca00834d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"777d230276d2a17a8411ebedca00834d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396967,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1518a90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","rebac_allow":false,"scope_allow":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":"d1518a90-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"3fd5447f-1830-4024-b9d9-d3a4918f75ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8594575} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1518a90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"777d230276d2a17a8411ebedca00834d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling 200 11ms","method":"POST","requestID":"d1518a90-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d153ad70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"777d230276d2a17a8411ebedca00834d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"777d230276d2a17a8411ebedca00834d"} device-1 | {"level":"info","message":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 14ms","method":"GET","requestID":"777d230276d2a17a8411ebedca00834d","responseTime":14,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d15422a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744922,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d153ad70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d153ad70-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8","level":"info","message":"auth send jwt","requestID":"668186f49e49ad0c0b59e695e6f331fa"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d15422a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"668186f49e49ad0c0b59e695e6f331fa","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d15422a0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"668186f49e49ad0c0b59e695e6f331fa"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.417094002Z"}]},"request_id":"159a4f06-0612-4775-b660-e857e85be2bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8728843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d153ad70-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"90494e7e-122e-4435-879a-e5645a49bc28","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8741152} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d15422a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d153ad70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698827,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} device-1 | {"level":"info","message":"GET /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e? 200 14ms","method":"GET","requestID":"d153ad70-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"668186f49e49ad0c0b59e695e6f331fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"668186f49e49ad0c0b59e695e6f331fa","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d15422a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 16ms","method":"GET","requestID":"d15422a0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:15.470160421Z"}]},"request_id":"d312f5d7-6736-4095-ac72-ab235716f8bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.8826993} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Building connection plan","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"6812ebab-2e44-4daf-9535-8d82bbdd42aa"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"f7258279-f1c0-4452-9a19-8c4621f32c6d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"82da3212-ff6c-40ad-ac3e-304012f153ee"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"668186f49e49ad0c0b59e695e6f331fa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"668186f49e49ad0c0b59e695e6f331fa"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d15708d0-793e-11ef-a51e-0dff660adfff"} device-1 | {"level":"info","message":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? 200 13ms","method":"GET","requestID":"668186f49e49ad0c0b59e695e6f331fa","responseTime":13,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5244617f-925a-4eab-9c78-b18a2b9b554b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"668186f49e49ad0c0b59e695e6f331fa"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d15708d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d15708d0-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2?id=f4d009bc-e780-45a6-b542-18c91d80b713","ws://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2?id=5496f9de-90ca-4599-93aa-cba20b6586eb"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.994626,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1577e00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049617,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxN30.OjaleHNqD__dGD_y3zc027kWs1Kcao0a-ZBuQaZ_jZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1577e00-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"939d05bf-adce-49b3-a6b4-697bf2886d90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.900391} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f96ea3b8-33a1-481b-8f7a-7e1abc0089e8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.9005399} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d1577e00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee'","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee'","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"d1577e00-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"d1577e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d15d4a60-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f4d009bc-e780-45a6-b542-18c91d80b713\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\"","requestID":"d15d4a60-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d15d4a60-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d15d9880-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\"","requestID":"d15d9880-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d15d9880-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c369829d7928b06dfa1793df3f0608ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c369829d7928b06dfa1793df3f0608ef","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"}}},"level":"info","message":"received a callback","requestID":"c369829d7928b06dfa1793df3f0608ef"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} device-1 | {"data":{"peerconnection":"2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"c369829d7928b06dfa1793df3f0608ef","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"c369829d7928b06dfa1793df3f0608ef"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} device-1 | {"data":{"peerconnection":"2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1eb63a3f6f73fe2de727f8d72ec1f7f5"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1633dd0-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e597160-a0ae-4de6-8c08-7db324be1188","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.9703465} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.673836,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1633dd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","rebac_allow":false,"scope_allow":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":"d1633dd0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e80b0833e473e01692ee3915daba7940","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e80b0833e473e01692ee3915daba7940","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"}}},"level":"info","message":"received a callback","requestID":"e80b0833e473e01692ee3915daba7940"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1633dd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling 200 13ms","method":"POST","requestID":"d1633dd0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d16587c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d165fcf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b41a2145-c61b-459c-aa34-3dd5bd9927bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.9876025} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.795642,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d16587c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","rebac_allow":false,"scope_allow":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":"d16587c0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c5ca4d9-ed3a-4d71-a22a-2bb7900a177c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049617.9884367} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.728105,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d165fcf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","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":"d165fcf0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d165fcf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee 200 9ms","method":"GET","requestID":"d165fcf0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d16587c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling 200 14ms","method":"POST","requestID":"d16587c0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"e80b0833e473e01692ee3915daba7940","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"e80b0833e473e01692ee3915daba7940"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d16a42b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0158dbde-a158-408d-99d9-abde3402930f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.0157907} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.602892,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d16a42b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d16a42b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d16a42b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling 200 9ms","method":"POST","requestID":"d16a42b0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d16bf060-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2b6e79d9-a8e6-4074-b031-3b4452a5c481","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.0276997} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.222399,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d16bf060-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d16bf060-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d16bf060-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling 200 10ms","method":"POST","requestID":"d16bf060-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw","level":"info","message":"auth send jwt","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.310202,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5e5d8c29af2fcf854337b2ee5468f8e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049618,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6"} experiment-1 | {"level":"info","message":"GET /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0 200 16ms","method":"GET","requestID":"5e5d8c29af2fcf854337b2ee5468f8e6","responseTime":16,"status":200,"url":"/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw","level":"info","message":"auth send jwt","requestID":"b7c22d6801c898bfc6934217e5843939"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b7c22d6801c898bfc6934217e5843939","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","requestID":"b7c22d6801c898bfc6934217e5843939"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.224201,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7c22d6801c898bfc6934217e5843939","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049618,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7c22d6801c898bfc6934217e5843939","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Attempting to finish experiment","requestID":"b7c22d6801c898bfc6934217e5843939"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.319623,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049618,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","device":"280d4270-a73c-4d82-8fcf-e84aadf9b58e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6c255cac-9118-4502-95b6-ca73afad0db2?id=f4d009bc-e780-45a6-b542-18c91d80b713 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.535","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":"02c652189491fd911b2b81f65d483774"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6c255cac-9118-4502-95b6-ca73afad0db2?id=5496f9de-90ca-4599-93aa-cba20b6586eb HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.535","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":"ec3a6a64cef609e94b45bbf66f638f9b"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","device":"5244617f-925a-4eab-9c78-b18a2b9b554b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5496f9de-90ca-4599-93aa-cba20b6586eb\" from room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f4d009bc-e780-45a6-b542-18c91d80b713\" in room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f4d009bc-e780-45a6-b542-18c91d80b713\" from room \"http://localhost/rooms/6c255cac-9118-4502-95b6-ca73afad0db2\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2acac590-0d1b-4573-8cf6-ca9ea4ed95ee': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2acac590-0d1b-4573-8cf6-ca9ea4ed95ee","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"2128b82d-3be6-4d09-b25f-5209aa3342ee","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.4640033} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82bde06c-c2d0-4d54-8c39-b669fcee0c31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.4642813} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b9b198b49101a20620d67db98a9e00f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b9b198b49101a20620d67db98a9e00f9","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03516421e4f16a0ddfaf6d0730cd8f2e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"}}},"level":"info","message":"received a callback","requestID":"b9b198b49101a20620d67db98a9e00f9"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"03516421e4f16a0ddfaf6d0730cd8f2e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"}}},"level":"info","message":"received a callback","requestID":"03516421e4f16a0ddfaf6d0730cd8f2e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee 204 43ms","method":"DELETE","requestID":"d1ac06a0-793e-11ef-9733-5750b05365a5","responseTime":43,"status":204,"url":"/peerconnections/2acac590-0d1b-4573-8cf6-ca9ea4ed95ee"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"},"level":"info","message":"Successfully finished experiment","requestID":"b7c22d6801c898bfc6934217e5843939"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1b5caa0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F280d4270-a73c-4d82-8fcf-e84aadf9b58e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70bed742-7196-49dc-bd6c-cb926205db9b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.512409} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.02591,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1b5caa0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e","object_type":"device","rebac_allow":false,"scope_allow":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":"d1b5caa0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1b5caa0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling 200 12ms","method":"POST","requestID":"d1b5caa0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3daf2b52-b990-42a6-8d5f-9c2144372da0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3daf2b52-b990-42a6-8d5f-9c2144372da0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"12662d18-e8a3-4c3b-9523-db0ef380d559","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.519823} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0965972a-dcac-479b-b7b2-1a3a00e99cbd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.5200336} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1b7ed80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b7c22d6801c898bfc6934217e5843939","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5244617f-925a-4eab-9c78-b18a2b9b554b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af067663-35ef-4b25-862c-23f00a7eabc2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.5250883} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.458815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1b7ed80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1b7ed80-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1b7ed80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling 200 10ms","method":"POST","requestID":"d1b7ed80-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/5244617f-925a-4eab-9c78-b18a2b9b554b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0","requestID":"b7c22d6801c898bfc6934217e5843939"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7c22d6801c898bfc6934217e5843939"} experiment-1 | {"level":"info","message":"DELETE /experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0 204 152ms","method":"DELETE","requestID":"b7c22d6801c898bfc6934217e5843939","responseTime":152,"status":204,"url":"/experiments/3daf2b52-b990-42a6-8d5f-9c2144372da0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"b9b198b49101a20620d67db98a9e00f9","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"b9b198b49101a20620d67db98a9e00f9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"03516421e4f16a0ddfaf6d0730cd8f2e","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"03516421e4f16a0ddfaf6d0730cd8f2e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw","level":"info","message":"auth send jwt","requestID":"f99127df84df839986131592ceb3ddfe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f99127df84df839986131592ceb3ddfe"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"1.025","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":"757073d23ede40afb6a7f1a927257b7b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1a99d3c4b3ea890624f1e78890a31863"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.900538,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f99127df84df839986131592ceb3ddfe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049618,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/280d4270-a73c-4d82-8fcf-e84aadf9b58e' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5244617f-925a-4eab-9c78-b18a2b9b554b' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a1d9c6cc-7b1d-4ab9-af74-4f5ca68a704a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6140208} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4bc458b1-cb4c-4103-82e7-71b944a74de3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6179578} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"105717b8-7d3b-4b0d-a1bb-e67c2e42e580","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6288252} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94db5e53-e6cc-452f-9aa4-9adc77d9268a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.628972} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"a839a47f-6645-4376-8949-ba43224e3622","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6326833} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f99127df84df839986131592ceb3ddfe"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f99127df84df839986131592ceb3ddfe"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"f99127df84df839986131592ceb3ddfe","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw","level":"info","message":"auth send jwt","requestID":"852d897494a0be9a06ccf84104787990"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"852d897494a0be9a06ccf84104787990","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"852d897494a0be9a06ccf84104787990"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.755562,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"852d897494a0be9a06ccf84104787990","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049618,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOH0.zz7JgrURWsueaQQc3IwL8HmnQRRVte1LYMOdS5j8Fkw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"58484d0f-3970-46d8-a036-e2d4f93beb76","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6572115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a29af1b6-2680-4473-b38f-843975eb5f00","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6622782} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"53bc93f5-1d14-49ff-9415-7861c808b383","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6711714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f31aa58e-143f-477c-884b-3ea2525ce91f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.6713994} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"b7f889a2-3c06-40a0-bc2f-a67c9328cf99","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049618.675853} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"852d897494a0be9a06ccf84104787990"} gateway-1 | {"time_local":"23/Sep/2024:00:00:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"852d897494a0be9a06ccf84104787990"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"852d897494a0be9a06ccf84104787990","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOX0.vKLkPsakH7fZCPzkhQLWhI-8tSOlzF6APf3xIn3lhcU","level":"info","message":"auth send jwt","requestID":"8f1a7cafba9c143ac266b55f485cadcc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8f1a7cafba9c143ac266b55f485cadcc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8f1a7cafba9c143ac266b55f485cadcc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.103596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8f1a7cafba9c143ac266b55f485cadcc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049619,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOX0.vKLkPsakH7fZCPzkhQLWhI-8tSOlzF6APf3xIn3lhcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f1a7cafba9c143ac266b55f485cadcc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"312bbd50-2490-4862-92b3-5faf0585610c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049619.1624591} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8f1a7cafba9c143ac266b55f485cadcc","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cd07025-4399-427c-9e59-4d8a57041eb9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049619.1695728} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8f1a7cafba9c143ac266b55f485cadcc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"ccf4a34b-93dc-4a95-9248-41f0ba3f5306","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049619.1832087} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f1a7cafba9c143ac266b55f485cadcc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8f1a7cafba9c143ac266b55f485cadcc"} device-1 | {"level":"info","message":"PATCH /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4 200 37ms","method":"PATCH","requestID":"8f1a7cafba9c143ac266b55f485cadcc","responseTime":37,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"} gateway-1 | {"time_local":"23/Sep/2024:00:00:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8f1a7cafba9c143ac266b55f485cadcc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOX0.vKLkPsakH7fZCPzkhQLWhI-8tSOlzF6APf3xIn3lhcU","level":"info","message":"auth send jwt","requestID":"aa41773a3a12a24a3933634bc8f08931"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa41773a3a12a24a3933634bc8f08931","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aa41773a3a12a24a3933634bc8f08931"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192312,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aa41773a3a12a24a3933634bc8f08931","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049619,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYxOX0.vKLkPsakH7fZCPzkhQLWhI-8tSOlzF6APf3xIn3lhcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa41773a3a12a24a3933634bc8f08931","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aa41773a3a12a24a3933634bc8f08931"} gateway-1 | {"time_local":"23/Sep/2024:00:00:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"aa41773a3a12a24a3933634bc8f08931"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/websocket 200 20ms","method":"POST","requestID":"aa41773a3a12a24a3933634bc8f08931","responseTime":20,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1e84f78b3254c2788c4743477ae88e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a1e84f78b3254c2788c4743477ae88e8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/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":"a1e84f78b3254c2788c4743477ae88e8"} device-1 | {"level":"info","message":"OPTIONS /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/websocket 200 2ms","method":"OPTIONS","requestID":"a1e84f78b3254c2788c4743477ae88e8","responseTime":2,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA","level":"info","message":"auth send jwt","requestID":"ec5346c49ba0aaf9740acea2a6a77c00"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec5346c49ba0aaf9740acea2a6a77c00","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ec5346c49ba0aaf9740acea2a6a77c00"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec5346c49ba0aaf9740acea2a6a77c00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec5346c49ba0aaf9740acea2a6a77c00","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ec5346c49ba0aaf9740acea2a6a77c00"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/websocket 200 29ms","method":"POST","requestID":"ec5346c49ba0aaf9740acea2a6a77c00","responseTime":29,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ec5346c49ba0aaf9740acea2a6a77c00"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ea63b9f55345fff657f758e11aaf898c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ea63b9f55345fff657f758e11aaf898c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ea63b9f55345fff657f758e11aaf898c"} device-1 | {"level":"info","message":"OPTIONS /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 1ms","method":"OPTIONS","requestID":"ea63b9f55345fff657f758e11aaf898c","responseTime":1,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA","level":"info","message":"auth send jwt","requestID":"98efba14234bf49478216595341407a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"98efba14234bf49478216595341407a9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"98efba14234bf49478216595341407a9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182415,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"98efba14234bf49478216595341407a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"98efba14234bf49478216595341407a9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"59d6e74b-7fa0-4be7-b24f-747a923d74a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.7836127} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"98efba14234bf49478216595341407a9","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84ea963a-2193-4cc9-91d9-93e32f07f0da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.7927046} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"98efba14234bf49478216595341407a9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"39a81cd6-24df-4878-9e61-449d41e810f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.805983} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"98efba14234bf49478216595341407a9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"98efba14234bf49478216595341407a9"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.048","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":"98efba14234bf49478216595341407a9"} device-1 | {"level":"info","message":"PATCH /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 41ms","method":"PATCH","requestID":"98efba14234bf49478216595341407a9","responseTime":41,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA","level":"info","message":"auth send jwt","requestID":"a823ce485e6018fc52818c937535a1a2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a823ce485e6018fc52818c937535a1a2","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a823ce485e6018fc52818c937535a1a2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.325943,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a823ce485e6018fc52818c937535a1a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a823ce485e6018fc52818c937535a1a2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"73eb127e-f6cd-485e-a798-134382f89ca6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.8365211} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a823ce485e6018fc52818c937535a1a2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a823ce485e6018fc52818c937535a1a2"} device-1 | {"level":"info","message":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 21ms","method":"GET","requestID":"a823ce485e6018fc52818c937535a1a2","responseTime":21,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a823ce485e6018fc52818c937535a1a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA","level":"info","message":"auth send jwt","requestID":"409b3fcf702f9492f6aca8ff1461d691"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"409b3fcf702f9492f6aca8ff1461d691","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"409b3fcf702f9492f6aca8ff1461d691"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.753669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"409b3fcf702f9492f6aca8ff1461d691","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"409b3fcf702f9492f6aca8ff1461d691","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"c88aad08-1c92-4b65-bc2b-899268f3b453","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.859623} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"409b3fcf702f9492f6aca8ff1461d691","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"409b3fcf702f9492f6aca8ff1461d691"} gateway-1 | {"time_local":"23/Sep/2024:00:00:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"409b3fcf702f9492f6aca8ff1461d691"} device-1 | {"level":"info","message":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? 200 13ms","method":"GET","requestID":"409b3fcf702f9492f6aca8ff1461d691","responseTime":13,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA","level":"info","message":"auth send jwt","requestID":"58726472cef18c725703b7d17e49094f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"58726472cef18c725703b7d17e49094f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"58726472cef18c725703b7d17e49094f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.056649,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"58726472cef18c725703b7d17e49094f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58726472cef18c725703b7d17e49094f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to run experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to book experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully booked experiment","requestID":"58726472cef18c725703b7d17e49094f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d32475d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d324c3f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124702,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d32475d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d32475d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286546,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d324c3f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d324c3f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"4aafff4f-b81d-414c-b033-fa5fe025ef48","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.9218004} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d32475d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d32475d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"0512ffd5-31a3-4def-ad5c-4025a83efd4d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.9271095} device-1 | {"level":"info","message":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 18ms","method":"GET","requestID":"d32475d0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d324c3f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d324c3f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? 200 21ms","method":"GET","requestID":"d324c3f0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Setting up experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully locked booking for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to update booking for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully updated booking for experiment","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully set up experiment","requestID":"58726472cef18c725703b7d17e49094f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d32f4b40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d32f9960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d32fe780-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully running experiment","requestID":"58726472cef18c725703b7d17e49094f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.767499,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d32f4b40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d32f4b40-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280072,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d32f9960-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"d32f9960-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.457631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:20Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d710b09e-ee7f-4922-8bc7-13fa6f6d7666","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.9955456} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d32fe780-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","rebac_allow":false,"scope_allow":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":"d32fe780-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"6ef11a43-56ed-4be3-b2e8-71c9c5879aba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049620.999329} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"d32f4b40-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"7b5a841c-1cb9-480d-b1c1-5751469d59db","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.005651} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d32f9960-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d32fe780-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling 200 26ms","method":"POST","requestID":"d32fe780-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d334a270-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d32f4b40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a549eb4-64ba-47b3-aa1d-8e86c23d8871#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a549eb4-64ba-47b3-aa1d-8e86c23d8871","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9d9e32b3-0279-49e2-9fa4-a4922850c740","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0182498} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18f25e58-3135-47af-9b3d-b2097c12d761","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0187833} device-1 | {"level":"info","message":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 42ms","method":"GET","requestID":"d32f4b40-793e-11ef-9733-5750b05365a5","responseTime":42,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d32f9960-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"58726472cef18c725703b7d17e49094f","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} device-1 | {"level":"info","message":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? 200 43ms","method":"GET","requestID":"d32f9960-793e-11ef-9733-5750b05365a5","responseTime":43,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1dd25052-e191-4c36-b8b9-c2c025fbb027","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0245156} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.061763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d334a270-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","rebac_allow":false,"scope_allow":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":"d334a270-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d334a270-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling 200 18ms","method":"POST","requestID":"d334a270-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d337d6c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"58726472cef18c725703b7d17e49094f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"58726472cef18c725703b7d17e49094f","responseTime":175,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47c8cb32-bcf5-477a-adf0-b2214f28f214","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0430932} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.608516,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d337d6c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","rebac_allow":false,"scope_allow":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":"d337d6c0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"8120ff731eb1cc591504dbb38bbacbaa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8120ff731eb1cc591504dbb38bbacbaa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d337d6c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling 200 12ms","method":"POST","requestID":"d337d6c0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8120ff731eb1cc591504dbb38bbacbaa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d33a20b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994711,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8120ff731eb1cc591504dbb38bbacbaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8120ff731eb1cc591504dbb38bbacbaa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d06262bb-2a4a-437d-b9e6-bacf972f9939","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0563226} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.585751,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d33a20b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","rebac_allow":false,"scope_allow":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":"d33a20b0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d33a20b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling 200 14ms","method":"POST","requestID":"d33a20b0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"58726472cef18c725703b7d17e49094f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"2f650377-bb1d-4fe8-b62f-95542ade78da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.060326} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"8120ff731eb1cc591504dbb38bbacbaa","responseTime":11,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.155112,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026115,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8120ff731eb1cc591504dbb38bbacbaa"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.628802283Z"}]},"request_id":"02e28eb9-1149-4fd2-9c51-4faa4563061c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.080145} device-1 | {"level":"info","message":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 32ms","method":"GET","requestID":"8120ff731eb1cc591504dbb38bbacbaa","responseTime":32,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8120ff731eb1cc591504dbb38bbacbaa"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"f4b31b9c-f3bc-4ff5-b3cc-76e478545588","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0825236} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"f6febf76ffb1cf68321794d9558c8ecd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6febf76ffb1cf68321794d9558c8ecd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c? 200 22ms","method":"GET","requestID":"d33cb8c0-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6febf76ffb1cf68321794d9558c8ecd"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? 200 24ms","method":"GET","requestID":"d33cdfd0-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761683,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Building connection plan","requestID":"58726472cef18c725703b7d17e49094f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"27b2021e-3ed0-46b9-a8dc-57c6186bc9b1"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"0f2ff081-d99e-4050-a94b-0e1d641e799a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"512c45c6-d8ec-4349-aaa4-112a7b7d25b0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"58726472cef18c725703b7d17e49094f"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6febf76ffb1cf68321794d9558c8ecd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6febf76ffb1cf68321794d9558c8ecd","responseTime":4,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d340fe80-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d340fe80-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d340fe80-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24?id=72115c4a-f970-4c0d-813e-a00f3e0fe426","ws://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24?id=ec6b6b85-bd18-4fb6-bbee-b789d8b3b991"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"58726472cef18c725703b7d17e49094f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:18.671144844Z"}]},"request_id":"13db6e30-6d67-4806-b29f-2fdd12a0c82e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.0985677} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6febf76ffb1cf68321794d9558c8ecd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.785279,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6febf76ffb1cf68321794d9558c8ecd"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d34173b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049620,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMH0.NfkC5vupv07h-mtpA9yJRbQcFSgF-elYKtDBDQl1ByA"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6febf76ffb1cf68321794d9558c8ecd"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d34173b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4? 200 14ms","method":"GET","requestID":"f6febf76ffb1cf68321794d9558c8ecd","responseTime":14,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9d5f4afa-55c1-41e5-8736-a0bd19ce6656","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.1114516} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be080717-cbe7-46b0-8bca-74b9ff37bcb1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.1115725} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d34173b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a'","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a'","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"d34173b0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d34173b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d346cae0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\"","requestID":"d346cae0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d346cae0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d3471900-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec6b6b85-bd18-4fb6-bbee-b789d8b3b991\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\"","requestID":"d3471900-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d3471900-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3fc5a2d72010bf1b711e051e81e86342","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3fc5a2d72010bf1b711e051e81e86342","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"}}},"level":"info","message":"received a callback","requestID":"3fc5a2d72010bf1b711e051e81e86342"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"3fc5a2d72010bf1b711e051e81e86342","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +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":"3fc5a2d72010bf1b711e051e81e86342"} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"58726472cef18c725703b7d17e49094f"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d34b5ec0-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0841935c-521f-40c3-a615-dc493fd3c32f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.1690116} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.451122,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d34b5ec0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d34b5ec0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e5377c5a9dfb7254a9fd83f5e8ef115","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9e5377c5a9dfb7254a9fd83f5e8ef115","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d34b5ec0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"}}},"level":"info","message":"received a callback","requestID":"9e5377c5a9dfb7254a9fd83f5e8ef115"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling 200 12ms","method":"POST","requestID":"d34b5ec0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d34da8b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d34df6d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ad37330-e212-4841-9e01-851068b6a6e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.183625} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.549852,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d34da8b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","rebac_allow":false,"scope_allow":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":"d34da8b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"626c50b3-afc2-4286-ac30-6540f754f49c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.18676} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.982273,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d34df6d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d34df6d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d34da8b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling 200 10ms","method":"POST","requestID":"d34da8b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d34df6d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a 200 10ms","method":"GET","requestID":"d34df6d0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"9e5377c5a9dfb7254a9fd83f5e8ef115","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e5377c5a9dfb7254a9fd83f5e8ef115"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d351a050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a86739c-3d49-4697-ae9f-71e6fea0056b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.2108145} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.681805,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d351a050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d351a050-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d351a050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling 200 10ms","method":"POST","requestID":"d351a050-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3537510-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c9636db-d575-4473-89bd-7a26757eb74f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.2215636} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.157006,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d3537510-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3537510-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3537510-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling 200 8ms","method":"POST","requestID":"d3537510-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"88be9fb473189a3d7c6dfee86d4c3a84"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88be9fb473189a3d7c6dfee86d4c3a84","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","requestID":"88be9fb473189a3d7c6dfee86d4c3a84"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.322856,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"88be9fb473189a3d7c6dfee86d4c3a84","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88be9fb473189a3d7c6dfee86d4c3a84","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","requestID":"88be9fb473189a3d7c6dfee86d4c3a84"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88be9fb473189a3d7c6dfee86d4c3a84"} experiment-1 | {"level":"info","message":"GET /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871 200 16ms","method":"GET","requestID":"88be9fb473189a3d7c6dfee86d4c3a84","responseTime":16,"status":200,"url":"/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7d0856f841ad749fe5fa3d6c38a1150","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.270026,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7d0856f841ad749fe5fa3d6c38a1150","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7d0856f841ad749fe5fa3d6c38a1150","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Attempting to finish experiment","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d36a0a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.861637,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d36a0a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d36a0a50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24?id=72115c4a-f970-4c0d-813e-a00f3e0fe426 HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.248","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3a8f3ae6f6c31d974b06590096057fec"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"72115c4a-f970-4c0d-813e-a00f3e0fe426\" from room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","device":"8c00eb99-e939-435e-822d-93e5b72bfa3c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24?id=ec6b6b85-bd18-4fb6-bbee-b789d8b3b991 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.248","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":"fccb89c766b9f792d6a27e1aec1242a6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ec6b6b85-bd18-4fb6-bbee-b789d8b3b991\" in room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ec6b6b85-bd18-4fb6-bbee-b789d8b3b991\" from room \"http://localhost/rooms/b2a4e4b3-39d3-43ba-b45a-ab81a1b5ab24\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00794c6aa2e426d84ddef74ea14b1dd4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"00794c6aa2e426d84ddef74ea14b1dd4","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"d98dcdca-b986-4a51-a041-b868962f2785","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.3900967} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd60c15f3126df0f722f41d949cbe9ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac395e18-18be-41d6-9089-1b18bfe27cdd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.3904605} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"}}},"level":"info","message":"received a callback","requestID":"00794c6aa2e426d84ddef74ea14b1dd4"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cd60c15f3126df0f722f41d949cbe9ef","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"}}},"level":"info","message":"received a callback","requestID":"cd60c15f3126df0f722f41d949cbe9ef"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d36a0a50-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d36a0a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a 204 46ms","method":"DELETE","requestID":"d36a0a50-793e-11ef-9733-5750b05365a5","responseTime":46,"status":204,"url":"/peerconnections/a5b5bd9c-e1bb-45c1-bbf5-4f451ee1a09a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"},"level":"info","message":"Successfully finished experiment","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3741c70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc63992c6-4cb5-43c9-8eb3-73bb461853e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42f04829-9e21-4161-84e5-c81519c6eac3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.438959} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.548455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d3741c70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4","object_type":"device","rebac_allow":false,"scope_allow":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":"d3741c70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3741c70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling 200 16ms","method":"POST","requestID":"d3741c70-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a549eb4-64ba-47b3-aa1d-8e86c23d8871': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a549eb4-64ba-47b3-aa1d-8e86c23d8871","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"65ffd4bd-c62c-4512-b4a6-10ecaa9b84fe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.4475052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1de266a2-9735-41e3-9507-202f298533d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.447728} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"d7d0856f841ad749fe5fa3d6c38a1150","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d376db90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c00eb99-e939-435e-822d-93e5b72bfa3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fa993c0-a580-4ddf-9704-92010ab07752","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.4546278} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.547618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d376db90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d376db90-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d376db90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling 200 12ms","method":"POST","requestID":"d376db90-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.213","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7d0856f841ad749fe5fa3d6c38a1150"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"2.342","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"38afbbdb5fad51d2f8995de37952f913"} experiment-1 | {"level":"info","message":"DELETE /experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871 204 210ms","method":"DELETE","requestID":"d7d0856f841ad749fe5fa3d6c38a1150","responseTime":210,"status":204,"url":"/experiments/1a549eb4-64ba-47b3-aa1d-8e86c23d8871"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 171ms","method":"POST","requestID":"00794c6aa2e426d84ddef74ea14b1dd4","responseTime":171,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +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.175","http_referrer":"","http_user_agent":"node-fetch","requestID":"00794c6aa2e426d84ddef74ea14b1dd4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 170ms","method":"POST","requestID":"cd60c15f3126df0f722f41d949cbe9ef","responseTime":170,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"b9b4d20d6dc168826638a9d22f42c5c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b9b4d20d6dc168826638a9d22f42c5c0"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +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.176","http_referrer":"","http_user_agent":"node-fetch","requestID":"cd60c15f3126df0f722f41d949cbe9ef"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.057745,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.849","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":"07be704c27c7ce307544121537401578"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b9b4d20d6dc168826638a9d22f42c5c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c63992c6-4cb5-43c9-8eb3-73bb461853e4' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8c00eb99-e939-435e-822d-93e5b72bfa3c' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"467b0ae6-3dc5-4358-99c3-0b3e37062ffe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.5841932} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c40b07a-2c8a-4c84-9fa3-2f6e70221f74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.589015} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2470e125-7836-4ecf-b23c-10e001ae9a4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.598189} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1645c441-4c7a-4187-93ee-e6eaa444d006","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.598317} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"3829e233-7d6f-4d35-b442-e62d2faf8b7c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.6026967} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b9b4d20d6dc168826638a9d22f42c5c0"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9b4d20d6dc168826638a9d22f42c5c0"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"b9b4d20d6dc168826638a9d22f42c5c0","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0","level":"info","message":"auth send jwt","requestID":"a61c7d838f1aac0c8854800388dc8b93"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a61c7d838f1aac0c8854800388dc8b93","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a61c7d838f1aac0c8854800388dc8b93"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.721668,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a61c7d838f1aac0c8854800388dc8b93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049621,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMX0.UMAD8uB6E3qVdp1aPAsx3CADTVTJk6GCZ4l5hmpotD0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1071c217-7b3d-4fe6-8bfc-19869b03e6f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.6298978} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a783ebfa-d269-40b2-be6e-47980a8932d2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.6350884} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"30768c34-7f58-4a28-a7dc-f070b9e467a4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.646044} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d621be7f-2f57-4ec0-b9c5-f6d59c194940","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.646114} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"8f1b87b5-4103-4ec3-963b-7532b6b2e768","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049621.650494} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a61c7d838f1aac0c8854800388dc8b93"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a61c7d838f1aac0c8854800388dc8b93","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a61c7d838f1aac0c8854800388dc8b93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMn0.JCadMqArYIMSjAfoNcbwn6lnXJdB-fZ4uozauNVMY4c","level":"info","message":"auth send jwt","requestID":"40cedcb87da9dfc0ec14ea007de458d2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40cedcb87da9dfc0ec14ea007de458d2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"40cedcb87da9dfc0ec14ea007de458d2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"40cedcb87da9dfc0ec14ea007de458d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049622,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMn0.JCadMqArYIMSjAfoNcbwn6lnXJdB-fZ4uozauNVMY4c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40cedcb87da9dfc0ec14ea007de458d2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"4d59391e-09e4-45bc-9f7a-ec6e3309ecc7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049622.140398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40cedcb87da9dfc0ec14ea007de458d2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8fffe1c6-35f1-4225-9652-910a8968636f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049622.1479604} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"40cedcb87da9dfc0ec14ea007de458d2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"48aeff78-68a6-4746-acbc-0dfd8e0f980b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049622.1614685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40cedcb87da9dfc0ec14ea007de458d2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"40cedcb87da9dfc0ec14ea007de458d2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"40cedcb87da9dfc0ec14ea007de458d2"} device-1 | {"level":"info","message":"PATCH /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f 200 39ms","method":"PATCH","requestID":"40cedcb87da9dfc0ec14ea007de458d2","responseTime":39,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMn0.JCadMqArYIMSjAfoNcbwn6lnXJdB-fZ4uozauNVMY4c","level":"info","message":"auth send jwt","requestID":"aff5dd1bb49aeee560a4de15054270f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aff5dd1bb49aeee560a4de15054270f8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aff5dd1bb49aeee560a4de15054270f8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.324856,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aff5dd1bb49aeee560a4de15054270f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049622,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyMn0.JCadMqArYIMSjAfoNcbwn6lnXJdB-fZ4uozauNVMY4c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aff5dd1bb49aeee560a4de15054270f8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aff5dd1bb49aeee560a4de15054270f8"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/websocket 200 23ms","method":"POST","requestID":"aff5dd1bb49aeee560a4de15054270f8","responseTime":23,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"aff5dd1bb49aeee560a4de15054270f8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3cd85b08a52233619586416839e572a0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3cd85b08a52233619586416839e572a0","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/95859a33-091e-4731-a0d2-50287b688c5e/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":"3cd85b08a52233619586416839e572a0"} device-1 | {"level":"info","message":"OPTIONS /devices/95859a33-091e-4731-a0d2-50287b688c5e/websocket 200 1ms","method":"OPTIONS","requestID":"3cd85b08a52233619586416839e572a0","responseTime":1,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4","level":"info","message":"auth send jwt","requestID":"e54de7631e22ef5a0e128cefa8a7386d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e54de7631e22ef5a0e128cefa8a7386d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e54de7631e22ef5a0e128cefa8a7386d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.364279,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e54de7631e22ef5a0e128cefa8a7386d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e54de7631e22ef5a0e128cefa8a7386d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e54de7631e22ef5a0e128cefa8a7386d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e54de7631e22ef5a0e128cefa8a7386d"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/websocket 200 23ms","method":"POST","requestID":"e54de7631e22ef5a0e128cefa8a7386d","responseTime":23,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00b1cefb265b5485cb32d6d71eefc1f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"00b1cefb265b5485cb32d6d71eefc1f1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/95859a33-091e-4731-a0d2-50287b688c5e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"00b1cefb265b5485cb32d6d71eefc1f1"} device-1 | {"level":"info","message":"OPTIONS /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 2ms","method":"OPTIONS","requestID":"00b1cefb265b5485cb32d6d71eefc1f1","responseTime":2,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4","level":"info","message":"auth send jwt","requestID":"e807c977d18d5870474c54baa8435807"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e807c977d18d5870474c54baa8435807","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e807c977d18d5870474c54baa8435807"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.898642,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e807c977d18d5870474c54baa8435807","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e807c977d18d5870474c54baa8435807","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"cd0e0770-c2be-4a78-8068-4b8b4803f5f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.8100297} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e807c977d18d5870474c54baa8435807","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ec3f0fb-1611-4326-981d-887093bc0179","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.8175027} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e807c977d18d5870474c54baa8435807","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"cbb1c94a-4eee-4df2-bde2-2272e6003c7e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.8303804} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e807c977d18d5870474c54baa8435807","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e807c977d18d5870474c54baa8435807"} device-1 | {"level":"info","message":"PATCH /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 41ms","method":"PATCH","requestID":"e807c977d18d5870474c54baa8435807","responseTime":41,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/95859a33-091e-4731-a0d2-50287b688c5e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.048","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":"e807c977d18d5870474c54baa8435807"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4","level":"info","message":"auth send jwt","requestID":"659de847dbe5e150efa3e66c5be34fd1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"659de847dbe5e150efa3e66c5be34fd1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"659de847dbe5e150efa3e66c5be34fd1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300692,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"659de847dbe5e150efa3e66c5be34fd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"659de847dbe5e150efa3e66c5be34fd1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"8d6a199c-9b3e-4656-be46-844f1f328524","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.8593214} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"659de847dbe5e150efa3e66c5be34fd1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"659de847dbe5e150efa3e66c5be34fd1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"659de847dbe5e150efa3e66c5be34fd1"} device-1 | {"level":"info","message":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? 200 19ms","method":"GET","requestID":"659de847dbe5e150efa3e66c5be34fd1","responseTime":19,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4","level":"info","message":"auth send jwt","requestID":"a74b95c4d24ae838116df7765e097591"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a74b95c4d24ae838116df7765e097591","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a74b95c4d24ae838116df7765e097591"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.807216,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a74b95c4d24ae838116df7765e097591","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a74b95c4d24ae838116df7765e097591","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"56f50642-71fe-40c1-aa66-3e58c5c45a85","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.8885195} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a74b95c4d24ae838116df7765e097591","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a74b95c4d24ae838116df7765e097591"} device-1 | {"level":"info","message":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 19ms","method":"GET","requestID":"a74b95c4d24ae838116df7765e097591","responseTime":19,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a74b95c4d24ae838116df7765e097591"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4","level":"info","message":"auth send jwt","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"604c447a179c13ec0fe9b1ea5c011b45","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.331047,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"604c447a179c13ec0fe9b1ea5c011b45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"604c447a179c13ec0fe9b1ea5c011b45","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to run experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to book experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully booked experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132577,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.059158,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"e1e74897-ca87-4c9c-a53a-7b87c00f765b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.9594927} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"c3020c79-1e83-4cf4-9b2e-808e3ffd95a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049623.960982} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? 200 21ms","method":"GET","requestID":"d4f42cc0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 20ms","method":"GET","requestID":"d4f47ae0-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Setting up experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully set up experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5003ab0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d500afe0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully running experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5012510-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331994,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5003ab0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d5003ab0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28167,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d500afe0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"d500afe0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b498c9f-6dc7-4c68-8b92-b98ae9fd5d68","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0441258} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"ec9d1628-53a8-4747-adc3-52afd4eabfa7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.046131} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.893088,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5012510-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","rebac_allow":false,"scope_allow":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":"d5012510-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"d5003ab0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"7f6caa76-099b-40e2-bed4-094be8f1f9a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0485427} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d500afe0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90235abe-d81e-4933-a206-a9c28e8f64b0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90235abe-d81e-4933-a206-a9c28e8f64b0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ecb419e2-8a66-4606-bc03-d2498ae01d28","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0601146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54f41336-9220-4493-a234-b779efd4f3d3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0606244} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5012510-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling 200 29ms","method":"POST","requestID":"d5012510-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5003ab0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"604c447a179c13ec0fe9b1ea5c011b45","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? 200 36ms","method":"GET","requestID":"d5003ab0-793e-11ef-9733-5750b05365a5","responseTime":36,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d500afe0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 35ms","method":"GET","requestID":"d500afe0-793e-11ef-9733-5750b05365a5","responseTime":35,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5062e20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ec185c9-1b52-4d0c-b367-1cfbb57f17c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0723495} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.595033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5073f90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5062e20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","rebac_allow":false,"scope_allow":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":"d5062e20-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5062e20-793e-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 177ms","method":"POST","requestID":"604c447a179c13ec0fe9b1ea5c011b45","responseTime":177,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling 200 14ms","method":"POST","requestID":"d5062e20-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"723c4e2d-2e67-4bec-b686-872340b56ad3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.0821893} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.831944,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5073f90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","rebac_allow":false,"scope_allow":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":"d5073f90-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"d4838071237eb7ccd2605b7d51087bbe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d4838071237eb7ccd2605b7d51087bbe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4838071237eb7ccd2605b7d51087bbe"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5073f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling 200 20ms","method":"POST","requestID":"d5073f90-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.430919,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d4838071237eb7ccd2605b7d51087bbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4838071237eb7ccd2605b7d51087bbe","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d50ac200-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"643c7cfc-1e8d-4bb1-8a2e-79a1c5d07478","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.1011965} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4838071237eb7ccd2605b7d51087bbe","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6388cd83-40a0-4a3d-b362-dc441316e9b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.1016088} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.301373,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d50ac200-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","rebac_allow":false,"scope_allow":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":"d50ac200-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4838071237eb7ccd2605b7d51087bbe"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4838071237eb7ccd2605b7d51087bbe"} device-1 | {"level":"info","message":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? 200 21ms","method":"GET","requestID":"d4838071237eb7ccd2605b7d51087bbe","responseTime":21,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d50ac200-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling 200 14ms","method":"POST","requestID":"d50ac200-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d50d5a10-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"24bc9783209f448237f06b2708440b03"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"24bc9783209f448237f06b2708440b03","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d50d8120-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24bc9783209f448237f06b2708440b03"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10359,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d50d5a10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d50d5a10-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762813,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:49968","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d50d8120-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d50d8120-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"24bc9783209f448237f06b2708440b03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"24bc9783209f448237f06b2708440b03","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.598155624Z"}]},"request_id":"9b0c31ca-de6d-4b23-bb6d-c71dc9a0ceaa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.1252825} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"a8f64766-e36d-46f6-b974-7e3b40ee6353","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.126439} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d50d5a10-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:21.646014956Z"}]},"request_id":"f65d686a-c41c-4af2-98c7-bde5d333e19f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.1279502} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d50d8120-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24bc9783209f448237f06b2708440b03","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d50d5a10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f? 200 23ms","method":"GET","requestID":"d50d5a10-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d50d8120-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 23ms","method":"GET","requestID":"d50d8120-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24bc9783209f448237f06b2708440b03"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Building connection plan","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"a1bcd38e-f8f1-4b2a-bcb9-5d20fc1d8010"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"23a592a5-ad08-4abb-ae35-da5952d9f894"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"7ab3d3a3-a232-4019-8b4f-7261b0799de9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24bc9783209f448237f06b2708440b03"} device-1 | {"level":"info","message":"GET /devices/95859a33-091e-4731-a0d2-50287b688c5e? 200 22ms","method":"GET","requestID":"24bc9783209f448237f06b2708440b03","responseTime":22,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d51178c0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d51178c0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d51178c0-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b?id=2bfc51f9-004e-4e5f-9f93-f1ee760a899f","ws://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b?id=73af2d33-251a-4af8-b208-213e861a4d2e"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.882107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5123c10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049623,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyM30.hSuZ3DPhFvfHF01gct5uOBhwzLk34xSo8LAzm5x21b4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5123c10-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"d1c0cd04-fdb0-42ae-b2bc-f700c53cbd14","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.160599} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01dea306-693a-4024-aeb1-791a2168b39e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.160783} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d5123c10-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4'","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4'","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"d5123c10-793e-11ef-9733-5750b05365a5","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d5123c10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d518a4b0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73af2d33-251a-4af8-b208-213e861a4d2e\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\"","requestID":"d518a4b0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d518a4b0-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e43912cbeb445bce21632f756d19122","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4e43912cbeb445bce21632f756d19122","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d518f2d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\"","requestID":"d518f2d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d518f2d0-793e-11ef-a51e-0dff660adfff"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"}}},"level":"info","message":"received a callback","requestID":"4e43912cbeb445bce21632f756d19122"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"4e43912cbeb445bce21632f756d19122","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"4e43912cbeb445bce21632f756d19122"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"604c447a179c13ec0fe9b1ea5c011b45"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d51d5fa0-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0aaae872-b942-4237-be91-97c54b70badb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.2243514} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.098953,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d51d5fa0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","rebac_allow":false,"scope_allow":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":"d51d5fa0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d51d5fa0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling 200 16ms","method":"POST","requestID":"d51d5fa0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c32a903a0597b588175037818fdd5e77","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c32a903a0597b588175037818fdd5e77","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d52045d0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"}}},"level":"info","message":"received a callback","requestID":"c32a903a0597b588175037818fdd5e77"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c65c268-5910-4fc8-97c0-53ef1ec6793e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.2430444} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.460164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d52045d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","rebac_allow":false,"scope_allow":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":"d52045d0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d5221a90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F473c86de-b9e6-4d37-8a38-43cdd98c67f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c77b271-9b1c-47be-a95b-c9413f084415","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.2556753} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.767307,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5221a90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4","object_type":"peerconnection","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":"d52045d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling 200 20ms","method":"POST","requestID":"d52045d0-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d5221a90-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d5221a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4 200 11ms","method":"GET","requestID":"d5221a90-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"c32a903a0597b588175037818fdd5e77","responseTime":40,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5268760-793e-11ef-9733-5750b05365a5"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"c32a903a0597b588175037818fdd5e77"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95549d53-864b-4525-af84-86ca65f26e5b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.2832253} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.205658,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5268760-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5268760-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5268760-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling 200 10ms","method":"POST","requestID":"d5268760-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5285c20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97284ed1-b38e-4101-a459-17ab316b9c67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.294953} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.518188,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5285c20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5285c20-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5285c20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling 200 10ms","method":"POST","requestID":"d5285c20-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"e30646b75b02bf7ca813da0ccb69dea2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e30646b75b02bf7ca813da0ccb69dea2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","requestID":"e30646b75b02bf7ca813da0ccb69dea2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.343305,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e30646b75b02bf7ca813da0ccb69dea2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e30646b75b02bf7ca813da0ccb69dea2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","requestID":"e30646b75b02bf7ca813da0ccb69dea2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e30646b75b02bf7ca813da0ccb69dea2"} experiment-1 | {"level":"info","message":"GET /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0 200 16ms","method":"GET","requestID":"e30646b75b02bf7ca813da0ccb69dea2","responseTime":16,"status":200,"url":"/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"e85fa939be4279144461bc78eb126887"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e85fa939be4279144461bc78eb126887","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","requestID":"e85fa939be4279144461bc78eb126887"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.223137,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e85fa939be4279144461bc78eb126887","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e85fa939be4279144461bc78eb126887","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Attempting to finish experiment","requestID":"e85fa939be4279144461bc78eb126887"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d5640590-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.237616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5640590-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5640590-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b47dcb42-579e-4eb1-92af-a529b731602b?id=73af2d33-251a-4af8-b208-213e861a4d2e HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.512","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"da80282b24fc1578e9228dd02346b8e9"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"73af2d33-251a-4af8-b208-213e861a4d2e\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b47dcb42-579e-4eb1-92af-a529b731602b?id=2bfc51f9-004e-4e5f-9f93-f1ee760a899f HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.512","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":"dc7ad0ffc8c4bb11e35bb69202b082be"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4","device":"95859a33-091e-4731-a0d2-50287b688c5e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"73af2d33-251a-4af8-b208-213e861a4d2e\" from room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" in room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2bfc51f9-004e-4e5f-9f93-f1ee760a899f\" from room \"http://localhost/rooms/b47dcb42-579e-4eb1-92af-a529b731602b\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"903c70d12fd81c9491e73fddcd32ed5f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"903c70d12fd81c9491e73fddcd32ed5f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F473c86de-b9e6-4d37-8a38-43cdd98c67f4': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F473c86de-b9e6-4d37-8a38-43cdd98c67f4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"a09331cc-dca2-4bc3-9db6-a63cf4b82190","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.7044995} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29b9e152-7532-4375-a523-99127688d22e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.7048151} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"677ce1b6c84e22187eb1546073326d1c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"}}},"level":"info","message":"received a callback","requestID":"903c70d12fd81c9491e73fddcd32ed5f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"677ce1b6c84e22187eb1546073326d1c","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d5640590-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"}}},"level":"info","message":"received a callback","requestID":"677ce1b6c84e22187eb1546073326d1c"} device-1 | {"data":{"peerconnection":"473c86de-b9e6-4d37-8a38-43cdd98c67f4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d5640590-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4 204 42ms","method":"DELETE","requestID":"d5640590-793e-11ef-9733-5750b05365a5","responseTime":42,"status":204,"url":"/peerconnections/473c86de-b9e6-4d37-8a38-43cdd98c67f4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"},"level":"info","message":"Successfully finished experiment","requestID":"e85fa939be4279144461bc78eb126887"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d56d0640-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95859a33-091e-4731-a0d2-50287b688c5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83a440a4-9938-4b47-9dd0-3d12aec6cd30","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.7442157} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.35212,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d56d0640-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d56d0640-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d56d0640-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling 200 8ms","method":"POST","requestID":"d56d0640-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/95859a33-091e-4731-a0d2-50287b688c5e/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90235abe-d81e-4933-a206-a9c28e8f64b0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F90235abe-d81e-4933-a206-a9c28e8f64b0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"4277bfe8-9b7d-4ed3-be44-ec8543df39a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.749216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93cebdbe-e5e4-4f88-a764-eac6c2b599da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.7495434} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e85fa939be4279144461bc78eb126887","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d56eb3f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8823d4d0-71bb-4066-b9c1-13ba6993362f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1d96e08-11a9-4982-9532-31f442dc8a0b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.7569344} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.979079,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d56eb3f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f","object_type":"device","rebac_allow":false,"scope_allow":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":"d56eb3f0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d56eb3f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling 200 10ms","method":"POST","requestID":"d56eb3f0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/8823d4d0-71bb-4066-b9c1-13ba6993362f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0","requestID":"e85fa939be4279144461bc78eb126887"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.193","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e85fa939be4279144461bc78eb126887"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"2.659","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"861cb642047bc8c46b9f659acb354905"} experiment-1 | {"level":"info","message":"DELETE /experiments/90235abe-d81e-4933-a206-a9c28e8f64b0 204 188ms","method":"DELETE","requestID":"e85fa939be4279144461bc78eb126887","responseTime":188,"status":204,"url":"/experiments/90235abe-d81e-4933-a206-a9c28e8f64b0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 156ms","method":"POST","requestID":"903c70d12fd81c9491e73fddcd32ed5f","responseTime":156,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"903c70d12fd81c9491e73fddcd32ed5f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"f8768655362f09830aea9bfeaf42f828"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8768655362f09830aea9bfeaf42f828","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 158ms","method":"POST","requestID":"677ce1b6c84e22187eb1546073326d1c","responseTime":158,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"677ce1b6c84e22187eb1546073326d1c"} device-1 | {"level":"info","message":"postDevices called","requestID":"f8768655362f09830aea9bfeaf42f828"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.122","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":"823c89a2ce0aecadd873643b9b12085c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.112689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f8768655362f09830aea9bfeaf42f828","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","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/8823d4d0-71bb-4066-b9c1-13ba6993362f' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"543f5ddf-23bc-47b3-a584-b6e9df2045bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.885139} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c374758-beb0-4f68-b2db-f150a5a0f882","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.8896108} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/95859a33-091e-4731-a0d2-50287b688c5e' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"184ede79-2841-4ad8-8145-5596ebec8b2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.898584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48b07b92-dcc7-4c03-af5c-37f2c074375c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.8987515} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"8a356d01-f8c8-42e6-90d0-1855b670231a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.9031303} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f8768655362f09830aea9bfeaf42f828"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f8768655362f09830aea9bfeaf42f828","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8768655362f09830aea9bfeaf42f828"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8","level":"info","message":"auth send jwt","requestID":"9ce5e3283d38f223f5d87a5d111c59b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9ce5e3283d38f223f5d87a5d111c59b4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.66833,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9ce5e3283d38f223f5d87a5d111c59b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049624,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNH0.-0Pv94xzNivSmM3C13Il81eMLeZ1OWJeWlCF8p5YwP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23af27ea-ad70-42b7-b7c6-abba3fd0b0c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.9287355} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fd61e43-fbe0-499a-a18f-144c8f38fecb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.933256} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"fbe8818a-f331-4f70-bfa7-90314528112e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.9499424} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eee8d381-d298-455f-8104-be2b36fee7b5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.950205} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"3ce39b1a-134d-40e5-bc73-61dbd1856fa5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049624.9543421} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9ce5e3283d38f223f5d87a5d111c59b4"} gateway-1 | {"time_local":"23/Sep/2024:00:00:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ce5e3283d38f223f5d87a5d111c59b4"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"9ce5e3283d38f223f5d87a5d111c59b4","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"b504209254325ff1cfb9822e8b416c3a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b504209254325ff1cfb9822e8b416c3a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b504209254325ff1cfb9822e8b416c3a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793211,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.618571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b504209254325ff1cfb9822e8b416c3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b504209254325ff1cfb9822e8b416c3a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"74940ce4-7054-407e-ba5e-5e2bb9ffa8f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4318922} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"286c814c-3745-43de-b83a-1250b810787d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4330382} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b504209254325ff1cfb9822e8b416c3a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"097da205-c2cc-4d0c-8212-cdc1195db6ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4375763} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ccc26cf3-6a0c-4957-a3f3-a2ed3d4b124f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4386814} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b504209254325ff1cfb9822e8b416c3a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"0b30c697-4cf2-4fcc-8ee5-aafdbff792b8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4418266} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b504209254325ff1cfb9822e8b416c3a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b504209254325ff1cfb9822e8b416c3a"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8cf764d2-2be5-4f4b-9c7b-773106687666 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b504209254325ff1cfb9822e8b416c3a"} device-1 | {"level":"info","message":"PATCH /devices/8cf764d2-2be5-4f4b-9c7b-773106687666 200 24ms","method":"PATCH","requestID":"b504209254325ff1cfb9822e8b416c3a","responseTime":24,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"81f93fedd13ccb4ad97deeda6a2c030b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"81f93fedd13ccb4ad97deeda6a2c030b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"81f93fedd13ccb4ad97deeda6a2c030b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646301,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"81f93fedd13ccb4ad97deeda6a2c030b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81f93fedd13ccb4ad97deeda6a2c030b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"9f3d6208-6fcb-4317-9a20-6a6b2297a3f4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.4530568} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f"} device-1 | {"level":"info","message":"PATCH /devices/db95b52e-600c-4b36-a371-19cbd1d00ade 200 38ms","method":"PATCH","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f","responseTime":38,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db95b52e-600c-4b36-a371-19cbd1d00ade HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f3c0e4fe643e3130bf9f02ff337fa36f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"5d623d43155dd6fdcf122490f520b95e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5d623d43155dd6fdcf122490f520b95e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5d623d43155dd6fdcf122490f520b95e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914443,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5d623d43155dd6fdcf122490f520b95e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d623d43155dd6fdcf122490f520b95e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"81f93fedd13ccb4ad97deeda6a2c030b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"81f93fedd13ccb4ad97deeda6a2c030b"} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/websocket 200 18ms","method":"POST","requestID":"81f93fedd13ccb4ad97deeda6a2c030b","responseTime":18,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5d623d43155dd6fdcf122490f520b95e"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5d623d43155dd6fdcf122490f520b95e"} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/websocket 200 17ms","method":"POST","requestID":"5d623d43155dd6fdcf122490f520b95e","responseTime":17,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"b2b9748a5e3ee3e73a8331925dec3f90"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2b9748a5e3ee3e73a8331925dec3f90","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2b9748a5e3ee3e73a8331925dec3f90"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926759,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b2b9748a5e3ee3e73a8331925dec3f90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2b9748a5e3ee3e73a8331925dec3f90","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"cd5e5f83-0556-4dbb-a25d-2bdc0590e89a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.5155318} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b2b9748a5e3ee3e73a8331925dec3f90","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2b9748a5e3ee3e73a8331925dec3f90"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2b9748a5e3ee3e73a8331925dec3f90"} device-1 | {"level":"info","message":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? 200 12ms","method":"GET","requestID":"b2b9748a5e3ee3e73a8331925dec3f90","responseTime":12,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"59f87b66196074902676a5ef6884333f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59f87b66196074902676a5ef6884333f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59f87b66196074902676a5ef6884333f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.859126,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"59f87b66196074902676a5ef6884333f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59f87b66196074902676a5ef6884333f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"6bd6a670-e9dc-45fe-a83a-f746b1971b85","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.5360608} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59f87b66196074902676a5ef6884333f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59f87b66196074902676a5ef6884333f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59f87b66196074902676a5ef6884333f"} device-1 | {"level":"info","message":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? 200 14ms","method":"GET","requestID":"59f87b66196074902676a5ef6884333f","responseTime":14,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"b4143faa639c1819f6785237653385bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4143faa639c1819f6785237653385bd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b4143faa639c1819f6785237653385bd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.346854,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b4143faa639c1819f6785237653385bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b4143faa639c1819f6785237653385bd","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to run experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to book experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully booked experiment","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610321,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"4362fd0f-21f0-4bc3-add1-886a26fe25ec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.5834396} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"96b7448d-7255-4afb-8322-d106b35f06c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.5839245} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? 200 13ms","method":"GET","requestID":"d5ec6f70-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? 200 12ms","method":"GET","requestID":"d5ecbd90-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Setting up experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully set up experiment","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5f54910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5f59730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5f5be40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671529,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5f54910-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5f54910-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.025229,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5f59730-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d5f59730-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully running experiment","requestID":"b4143faa639c1819f6785237653385bd"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6427e498-b5a9-41b4-8746-eb70e84472f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.6448197} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.624038,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5f5be40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","rebac_allow":false,"scope_allow":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":"d5f5be40-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"5d517f2c-eba8-42ac-a5bd-c2b74d848bfe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.647142} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d5f54910-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"da423af6-ccb5-4ad1-bf32-209a6ebbf377","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.651805} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d5f59730-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5f5be40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling 200 18ms","method":"POST","requestID":"d5f5be40-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5f967c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5f54910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? 200 30ms","method":"GET","requestID":"d5f54910-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5f59730-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1280b50-247b-46ac-9904-07996c82afbe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.666145} device-1 | {"level":"info","message":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? 200 31ms","method":"GET","requestID":"d5f59730-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F43593933-11f1-4edd-8383-017bb389d88a#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F43593933-11f1-4edd-8383-017bb389d88a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"85bbd9e3-723b-47f8-b445-1b8d6f6750d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.666814} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.032757,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5f967c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","rebac_allow":false,"scope_allow":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":"d5f967c0-793e-11ef-9733-5750b05365a5","responseTime":6,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c973cf5d-1193-435f-97e9-a884c5be44b4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.6669927} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"b4143faa639c1819f6785237653385bd","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5fb3c80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5f967c0-793e-11ef-9733-5750b05365a5"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling 200 16ms","method":"POST","requestID":"d5f967c0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 130ms","method":"POST","requestID":"b4143faa639c1819f6785237653385bd","responseTime":130,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16058bf9-e545-4cfb-af77-a598434a9980","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.6771934} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.87426,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5fb3c80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","rebac_allow":false,"scope_allow":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":"d5fb3c80-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"18263b4e3ca0899865fd7b336f10e8b1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"18263b4e3ca0899865fd7b336f10e8b1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5fb3c80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling 200 10ms","method":"POST","requestID":"d5fb3c80-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18263b4e3ca0899865fd7b336f10e8b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5fd1140-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640209,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"18263b4e3ca0899865fd7b336f10e8b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18263b4e3ca0899865fd7b336f10e8b1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c6c33b6-c29d-4856-88fe-73111b16651d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.6874928} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.180788,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5fd1140-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5fd1140-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"4b063d86-b9cb-4ba2-8d15-45df130ea981","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.6895256} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"18263b4e3ca0899865fd7b336f10e8b1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5fd1140-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling 200 9ms","method":"POST","requestID":"d5fd1140-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18263b4e3ca0899865fd7b336f10e8b1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18263b4e3ca0899865fd7b336f10e8b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? 200 12ms","method":"GET","requestID":"18263b4e3ca0899865fd7b336f10e8b1","responseTime":12,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5febef0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5fee600-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"64114822cd0e88853dbb7a42db912e0d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"64114822cd0e88853dbb7a42db912e0d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5febef0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5febef0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.674019,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64114822cd0e88853dbb7a42db912e0d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5fee600-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5fee600-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655981,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"64114822cd0e88853dbb7a42db912e0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"64114822cd0e88853dbb7a42db912e0d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.898562914Z"}]},"request_id":"59c6800e-4126-4fa0-9bc4-df5ee57938f4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.70515} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d5febef0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5febef0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"c284b612-d25b-4330-9b9f-b512152d0d4f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.7081401} device-1 | {"level":"info","message":"GET /devices/db95b52e-600c-4b36-a371-19cbd1d00ade? 200 14ms","method":"GET","requestID":"d5febef0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d5fee600-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:24.949917515Z"}]},"request_id":"11368ea7-dfbc-4f9c-92ae-e2b5ea54bfc9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.7088404} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64114822cd0e88853dbb7a42db912e0d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64114822cd0e88853dbb7a42db912e0d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64114822cd0e88853dbb7a42db912e0d"} device-1 | {"level":"info","message":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? 200 13ms","method":"GET","requestID":"64114822cd0e88853dbb7a42db912e0d","responseTime":13,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5fee600-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8cf764d2-2be5-4f4b-9c7b-773106687666? 200 17ms","method":"GET","requestID":"d5fee600-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Building connection plan","requestID":"b4143faa639c1819f6785237653385bd"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"e381c050-44b2-4667-b577-c0a4db1db6d0"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"ec8e18f6-e248-4e79-9905-1e5f740f0680"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"ab05676c-ba26-4995-9e14-55c7db822acc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b4143faa639c1819f6785237653385bd"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d601f340-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d601f340-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d601f340-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3?id=b18f9c34-77bd-4f12-b979-c2cc3c8e1451","ws://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3?id=e30e7da3-5ffa-43ee-99fc-748dd6adf24f"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"b4143faa639c1819f6785237653385bd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.648223,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d6026870-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6026870-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8e0ffc72-de1e-4d7d-bf39-b676bc9c636a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.7298853} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29daf33b-c154-4d1b-b81c-7ce4bd4385d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.730225} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d6026870-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4'","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4'","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"d6026870-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"d6026870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d6077180-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e30e7da3-5ffa-43ee-99fc-748dd6adf24f\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\"","requestID":"d6077180-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d6077180-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d6079890-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\"","requestID":"d6079890-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d6079890-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c8049754d23102435366a6af12645c3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9c8049754d23102435366a6af12645c3","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"}}},"level":"info","message":"received a callback","requestID":"9c8049754d23102435366a6af12645c3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"9c8049754d23102435366a6af12645c3","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c8049754d23102435366a6af12645c3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b4143faa639c1819f6785237653385bd"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d60c2c70-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee69fc0e-e0de-4c06-843f-3d577afdcb77","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.7884712} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.666669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d60c2c70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d60c2c70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fac59e5b174f005d999130ad2a7872b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fac59e5b174f005d999130ad2a7872b7","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"}}},"level":"info","message":"received a callback","requestID":"fac59e5b174f005d999130ad2a7872b7"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d60c2c70-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling 200 12ms","method":"POST","requestID":"d60c2c70-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d60e7660-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d60f12a0-793e-11ef-9733-5750b05365a5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef5ce2ad-c425-4e85-98bc-e282ac6c50af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.8034208} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.109553,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d60e7660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d60e7660-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3b565d2-5315-45be-80f2-7f01a5461ab4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c88b451d-3bca-4350-85e3-eee361a70f39","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.807683} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.878724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d60f12a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d60f12a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d60e7660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling 200 14ms","method":"POST","requestID":"d60e7660-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d60f12a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4 200 11ms","method":"GET","requestID":"d60f12a0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"fac59e5b174f005d999130ad2a7872b7","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"fac59e5b174f005d999130ad2a7872b7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d612e330-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b34ac193-85c9-4525-95a0-926f4aee3027","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.8321142} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d612e330-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d612e330-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d612e330-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling 200 9ms","method":"POST","requestID":"d612e330-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d61490e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbd827b7-04c4-4d05-b702-737a9bd90766","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049625.8424866} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451569,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d61490e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d61490e0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d61490e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling 200 9ms","method":"POST","requestID":"d61490e0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"0af1467a8ee613e05e0d6d56da9332f7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0af1467a8ee613e05e0d6d56da9332f7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/43593933-11f1-4edd-8383-017bb389d88a","requestID":"0af1467a8ee613e05e0d6d56da9332f7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.173742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0af1467a8ee613e05e0d6d56da9332f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0af1467a8ee613e05e0d6d56da9332f7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/43593933-11f1-4edd-8383-017bb389d88a","requestID":"0af1467a8ee613e05e0d6d56da9332f7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/43593933-11f1-4edd-8383-017bb389d88a HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0af1467a8ee613e05e0d6d56da9332f7"} experiment-1 | {"level":"info","message":"GET /experiments/43593933-11f1-4edd-8383-017bb389d88a 200 17ms","method":"GET","requestID":"0af1467a8ee613e05e0d6d56da9332f7","responseTime":17,"status":200,"url":"/experiments/43593933-11f1-4edd-8383-017bb389d88a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU","level":"info","message":"auth send jwt","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4c48f8a14c158d358be99ef9d41aa23","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/43593933-11f1-4edd-8383-017bb389d88a","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.166552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4c48f8a14c158d358be99ef9d41aa23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4c48f8a14c158d358be99ef9d41aa23","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Attempting to finish experiment","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.666371,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049625,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNX0.Y3HzKtV2BE5UgKm7Fa6SPTbfRB8oxd4aqxRUmX8LklU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3?id=b18f9c34-77bd-4f12-b979-c2cc3c8e1451 HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.261","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"44a312428806794bba564b3cb75200fc"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3?id=e30e7da3-5ffa-43ee-99fc-748dd6adf24f HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.261","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f5e7e674e7ee7e6ba8cc732d3cc713c7"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b18f9c34-77bd-4f12-b979-c2cc3c8e1451\" from room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"e30e7da3-5ffa-43ee-99fc-748dd6adf24f\" in room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"e30e7da3-5ffa-43ee-99fc-748dd6adf24f\" from room \"http://localhost/rooms/096e165b-c069-4d87-8edb-e27e8c1bb0f3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c76dcc89ae2fa1f938f9121651317a85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3b565d2-5315-45be-80f2-7f01a5461ab4': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc3b565d2-5315-45be-80f2-7f01a5461ab4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"7dfb78ac-e920-4715-b285-30cdd942bcc3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.0190752} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c76dcc89ae2fa1f938f9121651317a85","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"414b74a3ecef9da85d127c7e0bcf85b6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62bab574-d4ec-465a-a2dc-7965ee4ac582","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.0195713} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"}}},"level":"info","message":"received a callback","requestID":"c76dcc89ae2fa1f938f9121651317a85"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"414b74a3ecef9da85d127c7e0bcf85b6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"}}},"level":"info","message":"received a callback","requestID":"414b74a3ecef9da85d127c7e0bcf85b6"} device-1 | {"data":{"peerconnection":"c3b565d2-5315-45be-80f2-7f01a5461ab4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4 204 49ms","method":"DELETE","requestID":"d62c5ea0-793e-11ef-9733-5750b05365a5","responseTime":49,"status":204,"url":"/peerconnections/c3b565d2-5315-45be-80f2-7f01a5461ab4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/43593933-11f1-4edd-8383-017bb389d88a"},"level":"info","message":"Successfully finished experiment","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d637f760-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf764d2-2be5-4f4b-9c7b-773106687666","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5f7d0f4-a139-477a-be8e-306d2eb1961d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.07757} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.272341,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d637f760-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666","object_type":"device","rebac_allow":false,"scope_allow":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":"d637f760-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d637f760-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F43593933-11f1-4edd-8383-017bb389d88a': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F43593933-11f1-4edd-8383-017bb389d88a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"a8f53abc-e442-4fcf-8ae9-f032af4277bf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.084704} device-1 | {"level":"info","message":"POST /devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling 200 15ms","method":"POST","requestID":"d637f760-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/8cf764d2-2be5-4f4b-9c7b-773106687666/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d63ab680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38536d11-8612-466b-962f-dda70749afae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.0851083} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"f4c48f8a14c158d358be99ef9d41aa23","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb95b52e-600c-4b36-a371-19cbd1d00ade","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f97f55ab-b0dd-4f5b-a4ff-73c708583684","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.0956993} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.516252,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d63ab680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade","object_type":"device","rebac_allow":false,"scope_allow":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":"d63ab680-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d63ab680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling 200 15ms","method":"POST","requestID":"d63ab680-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/db95b52e-600c-4b36-a371-19cbd1d00ade/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/43593933-11f1-4edd-8383-017bb389d88a","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/43593933-11f1-4edd-8383-017bb389d88a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4c48f8a14c158d358be99ef9d41aa23"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"0.689","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e7fee788822f7acd2d92a5a940e99430"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.679","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8a371da8ac28cd5f1712980cf6ebddf7"} experiment-1 | {"level":"info","message":"DELETE /experiments/43593933-11f1-4edd-8383-017bb389d88a 204 182ms","method":"DELETE","requestID":"f4c48f8a14c158d358be99ef9d41aa23","responseTime":182,"status":204,"url":"/experiments/43593933-11f1-4edd-8383-017bb389d88a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"c76dcc89ae2fa1f938f9121651317a85","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"c76dcc89ae2fa1f938f9121651317a85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"414b74a3ecef9da85d127c7e0bcf85b6","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"414b74a3ecef9da85d127c7e0bcf85b6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNn0.yGLq_Atk_3jW7Z5z7oR4WBBiIDIWebT-YpMG3ErCMDw","level":"info","message":"auth send jwt","requestID":"caaf758a1d585d638ebc70b1bd794389"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db95b52e-600c-4b36-a371-19cbd1d00ade' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"caaf758a1d585d638ebc70b1bd794389"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.848329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"caaf758a1d585d638ebc70b1bd794389","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049626,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNn0.yGLq_Atk_3jW7Z5z7oR4WBBiIDIWebT-YpMG3ErCMDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8cf764d2-2be5-4f4b-9c7b-773106687666' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"808d5808-43db-47f2-ae8f-344ed0fdbdf3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.1848154} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c76482ce-6235-4472-9242-3c27255a62e0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.1896007} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9cdde297-a33f-410c-90e3-a649dc1aadc0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.1993265} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f21ec2fa-0493-43f8-895a-a5c051b3cda3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.1994674} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"cb631d74-afdc-4a72-8aba-a20d81d99b16","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.2044933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"caaf758a1d585d638ebc70b1bd794389"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"caaf758a1d585d638ebc70b1bd794389"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"caaf758a1d585d638ebc70b1bd794389","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNn0.yGLq_Atk_3jW7Z5z7oR4WBBiIDIWebT-YpMG3ErCMDw","level":"info","message":"auth send jwt","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.75111,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049626,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyNn0.yGLq_Atk_3jW7Z5z7oR4WBBiIDIWebT-YpMG3ErCMDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8ac78414-6815-4f81-9d98-244b4919c1ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.2353976} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3530c6ef-49e3-43d0-a360-552e7a063d57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.2405987} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"554557d4-b746-4688-83fc-28b43042f5df","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.252426} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af2fceec-64cc-4a0f-a6bb-a3493f1ce3cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.2527018} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"23edc563-ff71-4ed1-85e6-1cb405178039","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049626.257196} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff"} gateway-1 | {"time_local":"23/Sep/2024:00:00:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"3d8b0b0c0d78eaa369ee445d78fe23ff","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88e789382717ed2fa68df43226d6bc7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"88e789382717ed2fa68df43226d6bc7c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9abda47f-81a8-471c-922d-564205886c97/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":"88e789382717ed2fa68df43226d6bc7c"} device-1 | {"level":"info","message":"OPTIONS /devices/9abda47f-81a8-471c-922d-564205886c97/websocket 200 1ms","method":"OPTIONS","requestID":"88e789382717ed2fa68df43226d6bc7c","responseTime":1,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"ed132bebd9e760da0140ea69707a44ee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ed132bebd9e760da0140ea69707a44ee","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ed132bebd9e760da0140ea69707a44ee"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688771,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ed132bebd9e760da0140ea69707a44ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ed132bebd9e760da0140ea69707a44ee","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d6a5d315e74007e7f346202cb617ede5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d6a5d315e74007e7f346202cb617ede5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/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":"d6a5d315e74007e7f346202cb617ede5"} device-1 | {"level":"info","message":"OPTIONS /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/websocket 200 1ms","method":"OPTIONS","requestID":"d6a5d315e74007e7f346202cb617ede5","responseTime":1,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ed132bebd9e760da0140ea69707a44ee"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/websocket 200 21ms","method":"POST","requestID":"ed132bebd9e760da0140ea69707a44ee","responseTime":21,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/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":"ed132bebd9e760da0140ea69707a44ee"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.787717,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/websocket 200 19ms","method":"POST","requestID":"a51f7e2bbf687ca7bd7c6d98ea23c05b","responseTime":19,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8ab3a240253f400e05bc9a832a2ea7ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8ab3a240253f400e05bc9a832a2ea7ee","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9abda47f-81a8-471c-922d-564205886c97? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8ab3a240253f400e05bc9a832a2ea7ee"} device-1 | {"level":"info","message":"OPTIONS /devices/9abda47f-81a8-471c-922d-564205886c97? 200 1ms","method":"OPTIONS","requestID":"8ab3a240253f400e05bc9a832a2ea7ee","responseTime":1,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b89ec6148257c388a55330e9e388cfda","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b89ec6148257c388a55330e9e388cfda","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"b89ec6148257c388a55330e9e388cfda"} device-1 | {"level":"info","message":"OPTIONS /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 1ms","method":"OPTIONS","requestID":"b89ec6148257c388a55330e9e388cfda","responseTime":1,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"4511aea83de02e0c9c508c2550afb943"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4511aea83de02e0c9c508c2550afb943","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4511aea83de02e0c9c508c2550afb943"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305869,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4511aea83de02e0c9c508c2550afb943","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"4511aea83de02e0c9c508c2550afb943","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"0c3e681c-a94b-4626-aa72-3c6e8b7597e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.3548818} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"36a635a9-52a3-473e-ae16-814f271e7211","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.3594577} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4511aea83de02e0c9c508c2550afb943","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"634c98e1-3e48-487c-853e-bcae14819a2d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.3616982} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","responseTime":2,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdd70b7f-d985-411a-a118-91a90eb04ca8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.3659647} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4511aea83de02e0c9c508c2550afb943","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"fbaf55e6-f960-47d0-9f81-96452a0d56c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.378359} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9abda47f-81a8-471c-922d-564205886c97? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.052","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":"9c0e8b9b2a3baaef0ef65bdd01a593f4"} device-1 | {"level":"info","message":"PATCH /devices/9abda47f-81a8-471c-922d-564205886c97? 200 45ms","method":"PATCH","requestID":"9c0e8b9b2a3baaef0ef65bdd01a593f4","responseTime":45,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"eb39331b-b978-4db9-ad4d-b813e61ceffc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.390079} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4511aea83de02e0c9c508c2550afb943","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4511aea83de02e0c9c508c2550afb943"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"4511aea83de02e0c9c508c2550afb943"} device-1 | {"level":"info","message":"PATCH /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 51ms","method":"PATCH","requestID":"4511aea83de02e0c9c508c2550afb943","responseTime":51,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"27c0b74e4a6625176b2208d99a4a5477"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"27c0b74e4a6625176b2208d99a4a5477","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27c0b74e4a6625176b2208d99a4a5477"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638275,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"27c0b74e4a6625176b2208d99a4a5477","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27c0b74e4a6625176b2208d99a4a5477","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"cacea2ca-a7dd-431b-a081-1de484deab9b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.4100797} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"27c0b74e4a6625176b2208d99a4a5477","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27c0b74e4a6625176b2208d99a4a5477"} device-1 | {"level":"info","message":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 12ms","method":"GET","requestID":"27c0b74e4a6625176b2208d99a4a5477","responseTime":12,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27c0b74e4a6625176b2208d99a4a5477"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"6562db42dde09ed0b58fe9f47a8251e1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6562db42dde09ed0b58fe9f47a8251e1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6562db42dde09ed0b58fe9f47a8251e1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.839446,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6562db42dde09ed0b58fe9f47a8251e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6562db42dde09ed0b58fe9f47a8251e1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"3d32f9dd-9517-45a2-83fd-8af58865f9e6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.4305754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6562db42dde09ed0b58fe9f47a8251e1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6562db42dde09ed0b58fe9f47a8251e1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6562db42dde09ed0b58fe9f47a8251e1"} device-1 | {"level":"info","message":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? 200 13ms","method":"GET","requestID":"6562db42dde09ed0b58fe9f47a8251e1","responseTime":13,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.976288,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to run experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to book experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully booked experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973344,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.756806,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"0f60db7e-00b9-44cc-a7ff-653f3d5d118a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.486202} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"5c830754-497b-44fd-ae89-5630fd664de1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.4875405} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 19ms","method":"GET","requestID":"d7a73ed0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? 200 18ms","method":"GET","requestID":"d7a78cf0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Setting up experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully set up experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b3c1f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully running experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.065204,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50760","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00: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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"5e369fab-b4dc-43f0-bd6f-0e3f5db12b03","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5701873} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"2e76d6cb-1379-454d-b204-287a374f43e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5720253} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eff24a52-b4cc-4dae-a27d-634fba466e34","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5723672} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50760","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.058972,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7b3c1f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","rebac_allow":false,"scope_allow":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":"d7b3c1f0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? 200 23ms","method":"GET","requestID":"d7b39ae0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 26ms","method":"GET","requestID":"d7b34cc0-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b3c1f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling 200 24ms","method":"POST","requestID":"d7b3c1f0-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6a43caa6-ef3b-49dc-8243-70058ec8bcd5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5836303} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f3a6b19-5479-4eeb-a05d-2ae32b50f3b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5839643} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b7b990-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7b807b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7eb29f6d-bf6d-4ce9-9a22-af6149d8824f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5898683} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.52468,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7b7b990-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","rebac_allow":false,"scope_allow":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":"d7b7b990-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fb25e77-1e8e-48a4-89b8-3fb474343078","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.5909855} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188106,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6","responseTime":151,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7b807b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","rebac_allow":false,"scope_allow":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":"d7b807b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b7b990-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling 200 12ms","method":"POST","requestID":"d7b7b990-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"37c154c7c228f468cb91d134493db480"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7b807b0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"37c154c7c228f468cb91d134493db480","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/signaling 200 11ms","method":"POST","requestID":"d7b807b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37c154c7c228f468cb91d134493db480"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7ba0380-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"37c154c7c228f468cb91d134493db480","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"37c154c7c228f468cb91d134493db480","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c24ddddf-34e0-4cd7-a619-3562c5e77ab3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6040115} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.324295,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7ba0380-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7ba0380-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"c737fa90-8c25-4dc6-ac42-23ea745c6a61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6078408} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7ba0380-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"37c154c7c228f468cb91d134493db480","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/signaling 200 9ms","method":"POST","requestID":"d7ba0380-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7bbb130-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7bbff50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37c154c7c228f468cb91d134493db480"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37c154c7c228f468cb91d134493db480"} device-1 | {"level":"info","message":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 17ms","method":"GET","requestID":"37c154c7c228f468cb91d134493db480","responseTime":17,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673082,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7bbb130-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7bbb130-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698229,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7bbff50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7bbff50-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"ea28d89086b522d3dd5824be6d63b4c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea28d89086b522d3dd5824be6d63b4c0","responseTime":3,"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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.199300802Z"}]},"request_id":"e28e777f-7c8b-40e7-b439-399982361020","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6190631} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea28d89086b522d3dd5824be6d63b4c0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7bbb130-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"d8486eac-5597-4384-8bd1-5facd8065428","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.619918} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d7bbff50-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694175,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ea28d89086b522d3dd5824be6d63b4c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7bbb130-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ea28d89086b522d3dd5824be6d63b4c0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/9f9238a8-f3c4-45d6-8347-47927b76b077? 200 13ms","method":"GET","requestID":"d7bbb130-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7bbff50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? 200 11ms","method":"GET","requestID":"d7bbff50-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Building connection plan","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} 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":"82bb66cd-9672-4f87-9a70-d43a2619201a"},{"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":"863ab9a8-b373-413f-89fd-d7f4656c1ed1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8f8917ba-c84d-48a5-980e-1afd4a3aa508"}]},"level":"info","message":"Built pairwise service configurations","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:26.252402597Z"}]},"request_id":"3ad05e9a-6730-42e3-b1ad-d4618e70b539","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.627979} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ea28d89086b522d3dd5824be6d63b4c0","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.682982,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea28d89086b522d3dd5824be6d63b4c0"} device-1 | {"level":"info","message":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? 200 12ms","method":"GET","requestID":"ea28d89086b522d3dd5824be6d63b4c0","responseTime":12,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9abda47f-81a8-471c-922d-564205886c97? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea28d89086b522d3dd5824be6d63b4c0"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7be2230-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7be2230-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f90c16fd-e187-489e-8b61-a2f99990fcfd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6374903} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d1828cc-e759-4701-b77e-50148fc22d91","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6376133} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d7be2230-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08'","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08'","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d7be2230-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"d7be2230-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"d7be2230-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"adf027cbf7baba3ff3fb8a6edaaba6a6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c5c350-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77b7f808-e881-4e1b-8a2f-ee8bfe5526b9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6818757} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.949813,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7c5c350-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7c5c350-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7c5c350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling 200 8ms","method":"POST","requestID":"d7c5c350-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c749f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd7c5fa4-e8f2-445d-83a8-5a56674a5d56","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.6924262} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.883264,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7c749f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7c749f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7c749f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/signaling 200 13ms","method":"POST","requestID":"d7c749f0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 439825390141068362 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:dSv4\r\na=ice-pwd:S6zZGSay8MK4Is5nu6Gto1jT\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A9:F5:1A:0C:FF:91:D9:FB:2D:72:C7:37:6E:01:5B:74:18:AB:56:EE:42:7E:DC:EC:BA:50:88:34:A3:6E:5C:1F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1029829666552137667 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:JTYp\r\na=ice-pwd:YebwMByp/cZsH2DhaOGsfARJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C0:B1:8C:5B:58:15:F6:C5:FA:7E:94:70:9E:D3:31:75:2B:F9:6B:7B:60:A0:0E:83:2A:D6:82:31:82:69:31:A7\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1803829188 1 udp 2113937151 8ce06f77-8c66-484c-8288-1a5898473a83.local 50359 typ host generation 0 ufrag JTYp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9abda47f-81a8-471c-922d-564205886c97","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/9abda47f-81a8-471c-922d-564205886c97'"} device-1 | {"content":{"candidate":"candidate:4172259031 1 udp 1677729535 141.24.211.56 50359 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag JTYp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9abda47f-81a8-471c-922d-564205886c97","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/9abda47f-81a8-471c-922d-564205886c97'"} device-1 | {"content":{"candidate":"candidate:1963514899 1 udp 2113937151 f8964231-7a35-464e-b796-ee44aeefe608.local 42849 typ host generation 0 ufrag dSv4 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3861085440 1 udp 1677729535 141.24.211.56 42849 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag dSv4 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","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/9f9238a8-f3c4-45d6-8347-47927b76b077'"} device-1 | {"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"9abda47f-81a8-471c-922d-564205886c97","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/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d85639a641b244d4dc979ea436b517d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9d85639a641b244d4dc979ea436b517d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"}}},"level":"info","message":"received a callback","requestID":"9d85639a641b244d4dc979ea436b517d"} device-1 | {"device":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"9d85639a641b244d4dc979ea436b517d","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d85639a641b244d4dc979ea436b517d"} device-1 | {"device":"9abda47f-81a8-471c-922d-564205886c97","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","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/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b15a7cc731239766b72bc8311d5e2cec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b15a7cc731239766b72bc8311d5e2cec","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"}}},"level":"info","message":"received a callback","requestID":"b15a7cc731239766b72bc8311d5e2cec"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d7d41b30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9523f12e-66ac-49a3-9a6f-5ff20373c13f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.7754095} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.144801,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7d41b30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7d41b30-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d7d41b30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08 200 7ms","method":"GET","requestID":"d7d41b30-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"b15a7cc731239766b72bc8311d5e2cec","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"b15a7cc731239766b72bc8311d5e2cec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7d860f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1a779f5-46da-4c32-b82d-6732fa717827","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.803675} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.028045,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7d860f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7d860f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7d860f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/signaling 200 8ms","method":"POST","requestID":"d7d860f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7d9e790-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84bc6705-a1a0-4d64-9ea7-ef9c6aea84a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.8130345} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.106249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7d9e790-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7d9e790-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7d9e790-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling 200 8ms","method":"POST","requestID":"d7d9e790-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"48707fc83344f1981830a7ca5980f99c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48707fc83344f1981830a7ca5980f99c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","requestID":"48707fc83344f1981830a7ca5980f99c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.873903,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"48707fc83344f1981830a7ca5980f99c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48707fc83344f1981830a7ca5980f99c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","requestID":"48707fc83344f1981830a7ca5980f99c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48707fc83344f1981830a7ca5980f99c"} experiment-1 | {"level":"info","message":"GET /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7 200 12ms","method":"GET","requestID":"48707fc83344f1981830a7ca5980f99c","responseTime":12,"status":200,"url":"/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M","level":"info","message":"auth send jwt","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9cb1ebb3b50c108930dac634ce720c7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.267592,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c9cb1ebb3b50c108930dac634ce720c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9cb1ebb3b50c108930dac634ce720c7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Attempting to finish experiment","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d7e5f580-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.00173,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7e5f580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049628,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOH0.yNeqzfV5WDI65qwwiWx7ZEmyKEUUYUoLlu7cNEzMP5M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7e5f580-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","device":"9f9238a8-f3c4-45d6-8347-47927b76b077","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","device":"9abda47f-81a8-471c-922d-564205886c97","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/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3ac3e37b-cda5-4f3f-87a9-93e28e9ace08': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"653bb6e1-bc70-45f6-b209-96cfa5a3a339","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.9095602} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"153b41c7b945adc02e55f3c7ffd07a8b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f08b1fe8-1a85-4a08-a049-802e13db3bfc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.9099102} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"153b41c7b945adc02e55f3c7ffd07a8b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"d7e5f580-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4c57995a37e48377553103ed05efcf6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"}}},"level":"info","message":"received a callback","requestID":"153b41c7b945adc02e55f3c7ffd07a8b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e4c57995a37e48377553103ed05efcf6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"}}},"level":"info","message":"received a callback","requestID":"e4c57995a37e48377553103ed05efcf6"} device-1 | {"data":{"peerconnection":"3ac3e37b-cda5-4f3f-87a9-93e28e9ace08","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d7e5f580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08 204 44ms","method":"DELETE","requestID":"d7e5f580-793e-11ef-9733-5750b05365a5","responseTime":45,"status":204,"url":"/peerconnections/3ac3e37b-cda5-4f3f-87a9-93e28e9ace08"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"},"level":"info","message":"Successfully finished experiment","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7f0a3e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abda47f-81a8-471c-922d-564205886c97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb72c2bc-2a5c-4f50-aabe-dba23f386892","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.96373} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.266093,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7f0a3e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7f0a3e0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7f0a3e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9abda47f-81a8-471c-922d-564205886c97/signaling 200 12ms","method":"POST","requestID":"d7f0a3e0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9abda47f-81a8-471c-922d-564205886c97/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ba7c63da-a9d7-4bb3-9b74-2124c9a5ee86","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.9707136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22abd7df-5443-4b27-bf3e-7b3ae4f40245","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.9710643} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c9cb1ebb3b50c108930dac634ce720c7","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7f2c6c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f9238a8-f3c4-45d6-8347-47927b76b077","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f24b293-c6c7-425b-a63a-213ebc5662bf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049628.9788818} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.438893,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d7f2c6c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077","object_type":"device","rebac_allow":false,"scope_allow":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":"d7f2c6c0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7f2c6c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling 200 13ms","method":"POST","requestID":"d7f2c6c0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9f9238a8-f3c4-45d6-8347-47927b76b077/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c9cb1ebb3b50c108930dac634ce720c7"} experiment-1 | {"level":"info","message":"DELETE /experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7 204 164ms","method":"DELETE","requestID":"c9cb1ebb3b50c108930dac634ce720c7","responseTime":164,"status":204,"url":"/experiments/5d2b395b-4a6d-4ce7-8c37-8c369ddce2a7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"153b41c7b945adc02e55f3c7ffd07a8b","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"153b41c7b945adc02e55f3c7ffd07a8b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"e4c57995a37e48377553103ed05efcf6","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4c57995a37e48377553103ed05efcf6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOX0.iVahb2sErCDCH8BZf9FtgXZyGB8Dx4l3sYnhiQ4NU6w","level":"info","message":"auth send jwt","requestID":"f493f07f41b23c713b7df5f28d42a7da"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f493f07f41b23c713b7df5f28d42a7da"} gateway-1 | {"time_local":"23/Sep/2024:00:00:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.744","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":"e55481b423a6a6e79c4ff1ab9f0a50d0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:29Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.849159,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f493f07f41b23c713b7df5f28d42a7da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049629,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOX0.iVahb2sErCDCH8BZf9FtgXZyGB8Dx4l3sYnhiQ4NU6w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:00:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3317","request_time":"0.765","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":"d9a58b64fcba8ef402b66a95a7346694"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9f9238a8-f3c4-45d6-8347-47927b76b077' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fdad6d5e-40d6-483e-930f-1f5f8e422c92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.065763} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9abda47f-81a8-471c-922d-564205886c97' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97cce9ea-9776-4773-bb5a-25aab69edb14","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.0708976} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"78f69406-87cb-4bca-835f-70e5efd815fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.079189} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4659c7a5-ac01-4f94-93f5-63fe5bd42c03","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.0793924} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"9c796c4e-2b32-4c1b-a4df-7a698caec984","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.08312} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f493f07f41b23c713b7df5f28d42a7da"} gateway-1 | {"time_local":"23/Sep/2024:00:00:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f493f07f41b23c713b7df5f28d42a7da"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f493f07f41b23c713b7df5f28d42a7da","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOX0.iVahb2sErCDCH8BZf9FtgXZyGB8Dx4l3sYnhiQ4NU6w","level":"info","message":"auth send jwt","requestID":"e193f55e672a048e049c14f5f8c0e0c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e193f55e672a048e049c14f5f8c0e0c5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e193f55e672a048e049c14f5f8c0e0c5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:29Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.96421,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e193f55e672a048e049c14f5f8c0e0c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049629,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYyOX0.iVahb2sErCDCH8BZf9FtgXZyGB8Dx4l3sYnhiQ4NU6w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6edaf90f-540e-4904-a136-30d0bb7da631","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.1054204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd81dfe0-5e4e-4d34-927e-bf9c3b4ad54d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.1092384} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3ab532ed-b88b-4c75-922d-eb08bb3494d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.1239886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7de83080-988d-45fd-b4cf-83881af6d926","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.1241999} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"f54cc2cf-b524-42eb-82ba-db3abab6a041","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049629.1273034} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e193f55e672a048e049c14f5f8c0e0c5"} gateway-1 | {"time_local":"23/Sep/2024:00:00:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e193f55e672a048e049c14f5f8c0e0c5"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"e193f55e672a048e049c14f5f8c0e0c5","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f8efab255fe8e289b942851423ed24f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1f8efab255fe8e289b942851423ed24f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/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":"1f8efab255fe8e289b942851423ed24f"} device-1 | {"level":"info","message":"OPTIONS /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/websocket 200 1ms","method":"OPTIONS","requestID":"1f8efab255fe8e289b942851423ed24f","responseTime":1,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330225,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"85a3d4ddf334c3169a8ab1369bd55f0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33ab65809c5bdd7293db2d2234473f63","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"33ab65809c5bdd7293db2d2234473f63","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4a141ab0-0973-4304-a3b0-efd369607e84/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":"33ab65809c5bdd7293db2d2234473f63"} device-1 | {"level":"info","message":"OPTIONS /devices/4a141ab0-0973-4304-a3b0-efd369607e84/websocket 200 1ms","method":"OPTIONS","requestID":"33ab65809c5bdd7293db2d2234473f63","responseTime":1,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"97b271dad5406f3f7540833f8e195b6f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"97b271dad5406f3f7540833f8e195b6f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/websocket 200 23ms","method":"POST","requestID":"85a3d4ddf334c3169a8ab1369bd55f0e","responseTime":23,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/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":"85a3d4ddf334c3169a8ab1369bd55f0e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"97b271dad5406f3f7540833f8e195b6f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9188,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"97b271dad5406f3f7540833f8e195b6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97b271dad5406f3f7540833f8e195b6f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"97b271dad5406f3f7540833f8e195b6f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"97b271dad5406f3f7540833f8e195b6f"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/websocket 200 25ms","method":"POST","requestID":"97b271dad5406f3f7540833f8e195b6f","responseTime":25,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1df29989d88c54103e68e0f8237e5144","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1df29989d88c54103e68e0f8237e5144","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"1df29989d88c54103e68e0f8237e5144"} device-1 | {"level":"info","message":"OPTIONS /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 1ms","method":"OPTIONS","requestID":"1df29989d88c54103e68e0f8237e5144","responseTime":1,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"93f0767015a2009d50b7f0e989a54ea9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93f0767015a2009d50b7f0e989a54ea9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84' connected"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"93f0767015a2009d50b7f0e989a54ea9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.847171,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"93f0767015a2009d50b7f0e989a54ea9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"93f0767015a2009d50b7f0e989a54ea9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"9f9866ef-f81d-4a3c-9017-c794fef81884","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.146032} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93f0767015a2009d50b7f0e989a54ea9","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"532d93df03ab54f0b1183acf61638b48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"532d93df03ab54f0b1183acf61638b48","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4a141ab0-0973-4304-a3b0-efd369607e84? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"532d93df03ab54f0b1183acf61638b48"} device-1 | {"level":"info","message":"OPTIONS /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 1ms","method":"OPTIONS","requestID":"532d93df03ab54f0b1183acf61638b48","responseTime":1,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e6b9575d-72a5-4476-b462-dcd666eb4f1f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.154373} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"93f0767015a2009d50b7f0e989a54ea9","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"e73c3f08f92853e3546f8125660093ad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e73c3f08f92853e3546f8125660093ad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e73c3f08f92853e3546f8125660093ad"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"e4bab00e-dc81-4a58-a252-1b8d0021b991","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.1644518} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93f0767015a2009d50b7f0e989a54ea9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866875,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"93f0767015a2009d50b7f0e989a54ea9"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e73c3f08f92853e3546f8125660093ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"93f0767015a2009d50b7f0e989a54ea9"} device-1 | {"level":"info","message":"PATCH /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 34ms","method":"PATCH","requestID":"93f0767015a2009d50b7f0e989a54ea9","responseTime":34,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e73c3f08f92853e3546f8125660093ad","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"83309e63-9870-4b2c-a2ba-6c383ed1e2be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.1762962} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e73c3f08f92853e3546f8125660093ad","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1348f833-3cb9-4cd3-93d1-1723885eaffb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.1839259} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e73c3f08f92853e3546f8125660093ad","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"9b5547d7-2d54-4cfd-9d88-9c86b3c27840","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.2010593} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e73c3f08f92853e3546f8125660093ad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e73c3f08f92853e3546f8125660093ad"} device-1 | {"level":"info","message":"PATCH /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 42ms","method":"PATCH","requestID":"e73c3f08f92853e3546f8125660093ad","responseTime":42,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4a141ab0-0973-4304-a3b0-efd369607e84? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.048","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":"e73c3f08f92853e3546f8125660093ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262968,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fee34dafd9c6d5782bcf11458d3bc9a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"1e589029-ca72-4353-afb5-2ad1800c1fcc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.2292888} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6"} device-1 | {"level":"info","message":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 17ms","method":"GET","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6","responseTime":17,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fee34dafd9c6d5782bcf11458d3bc9a6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"105ef07f8852eb9324a41a97b42fec0b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"105ef07f8852eb9324a41a97b42fec0b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"105ef07f8852eb9324a41a97b42fec0b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"105ef07f8852eb9324a41a97b42fec0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"105ef07f8852eb9324a41a97b42fec0b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"68bdab6d-bc19-425a-acf9-1b33832bbc0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.253914} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"105ef07f8852eb9324a41a97b42fec0b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"105ef07f8852eb9324a41a97b42fec0b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"105ef07f8852eb9324a41a97b42fec0b"} device-1 | {"level":"info","message":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 17ms","method":"GET","requestID":"105ef07f8852eb9324a41a97b42fec0b","responseTime":17,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"c16412984c7f3bac082796c7a734a303"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c16412984c7f3bac082796c7a734a303","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c16412984c7f3bac082796c7a734a303"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.2735,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c16412984c7f3bac082796c7a734a303","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c16412984c7f3bac082796c7a734a303","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to run experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to book experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully booked experiment","requestID":"c16412984c7f3bac082796c7a734a303"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d957d500-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9582320-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648285,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d957d500-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d957d500-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9582320-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9582320-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"d509cd36-8c18-4f36-bc3c-db055b1d40d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.3266656} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d957d500-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"2e1a9a4e-b08e-4f8a-bfc8-76df288c0ef6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.32814} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9582320-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d957d500-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 21ms","method":"GET","requestID":"d957d500-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9582320-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 21ms","method":"GET","requestID":"d9582320-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Setting up experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully set up experiment","requestID":"c16412984c7f3bac082796c7a734a303"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9631fa0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9636dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d96394d0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully running experiment","requestID":"c16412984c7f3bac082796c7a734a303"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946946,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9631fa0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d9631fa0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211526,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50760","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9636dc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d9636dc0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50760","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.12558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4425aed-67f1-482f-a9db-1acc959d86da","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.3971376} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96394d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","rebac_allow":false,"scope_allow":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":"d96394d0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"aea714bb-a8c1-4033-877f-718c045fd702","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4016528} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d9631fa0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"fa27c5d8-8bee-42dc-872a-70ed3ba8c158","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4052508} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d96394d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling 200 17ms","method":"POST","requestID":"d96394d0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d9636dc0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9671740-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9631fa0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8d6ca89-8486-4ce4-84d8-94a0133419a1#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8d6ca89-8486-4ce4-84d8-94a0133419a1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"31984a0c-7aa1-42d3-97ed-3d356bd462d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4162688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adadbc4c-d5c6-4a4f-a6c5-55facac6a2e6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.416497} device-1 | {"level":"info","message":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 32ms","method":"GET","requestID":"d9631fa0-793e-11ef-9733-5750b05365a5","responseTime":32,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9636dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 31ms","method":"GET","requestID":"d9636dc0-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c16412984c7f3bac082796c7a734a303","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f7677d7-aa80-4628-a3e3-a0e7bf64ccd8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4195693} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.20155,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d96876d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9671740-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","rebac_allow":false,"scope_allow":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":"d9671740-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9671740-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling 200 14ms","method":"POST","requestID":"d9671740-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"160b054c-328f-4806-b6f4-9f5269ff900b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.427344} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.970702,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96876d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","rebac_allow":false,"scope_allow":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":"d96876d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c16412984c7f3bac082796c7a734a303"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"level":"info","message":"POST /experiments? 201 163ms","method":"POST","requestID":"c16412984c7f3bac082796c7a734a303","responseTime":163,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d96876d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling 200 11ms","method":"POST","requestID":"d96876d0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d96a99b0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"545e856aaf35c12bd9cca960e82f38b5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"545e856aaf35c12bd9cca960e82f38b5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"545e856aaf35c12bd9cca960e82f38b5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94732e9a-9283-42d0-a856-3a09403fe727","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4401288} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038102,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"545e856aaf35c12bd9cca960e82f38b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"545e856aaf35c12bd9cca960e82f38b5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.749345,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96a99b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","rebac_allow":false,"scope_allow":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":"d96a99b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"019301dd-7ef1-408e-87db-b773e60ecbdc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4444501} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d96a99b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling 200 10ms","method":"POST","requestID":"d96a99b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"545e856aaf35c12bd9cca960e82f38b5","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d96c9580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"545e856aaf35c12bd9cca960e82f38b5"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"545e856aaf35c12bd9cca960e82f38b5"} device-1 | {"level":"info","message":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 13ms","method":"GET","requestID":"545e856aaf35c12bd9cca960e82f38b5","responseTime":13,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803946,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96c9580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d96c9580-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742304,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"4599c557b72defa331557d07a124f9b3"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4599c557b72defa331557d07a124f9b3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4599c557b72defa331557d07a124f9b3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.079169107Z"}]},"request_id":"e4408609-a2de-4c81-9fbd-931f88187afd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.457374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d96c9580-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"6301cbea-e8b6-4534-8fb2-36cee0a3236f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4582496} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d96c9580-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.072368,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} device-1 | {"level":"info","message":"GET /devices/4a141ab0-0973-4304-a3b0-efd369607e84? 200 13ms","method":"GET","requestID":"d96c9580-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4599c557b72defa331557d07a124f9b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4599c557b72defa331557d07a124f9b3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:29.123960932Z"}]},"request_id":"9885c40c-46a1-45fb-b2bb-4255dfdf4869","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4667} device-1 | {"level":"info","message":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 16ms","method":"GET","requestID":"d96ce3a0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4599c557b72defa331557d07a124f9b3","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Building connection plan","requestID":"c16412984c7f3bac082796c7a734a303"} 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":"dfce04c6-d0ce-467e-98bc-695f9af90a90"},{"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":"d6fefbaf-b80c-4383-b9a0-560cb32fec6c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"91aa80c1-fd7c-4f4b-8379-d77eeda37645"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c16412984c7f3bac082796c7a734a303"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c16412984c7f3bac082796c7a734a303"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4599c557b72defa331557d07a124f9b3"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4599c557b72defa331557d07a124f9b3"} device-1 | {"level":"info","message":"GET /devices/a5b4529e-f822-41aa-80e3-b07ef348b292? 200 15ms","method":"GET","requestID":"4599c557b72defa331557d07a124f9b3","responseTime":15,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.693835,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7db4afc3-3a2f-4229-b722-15f56569f824","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4808366} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0693ae74-00ae-4f37-9408-3204ecc91aa9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.4811} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782'","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782'","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"d96fc9d0-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"d96fc9d0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c16412984c7f3bac082796c7a734a303"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d977b910-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5eeafe4-edc8-42d7-91d2-aba17b734531","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.5250883} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.201165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d977b910-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d977b910-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d977b910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling 200 8ms","method":"POST","requestID":"d977b910-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9793fb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} device-1 | {"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"242c655b-2b51-4aa3-bde4-f81574ce4c74","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.5362737} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.161315,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9793fb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9793fb0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9793fb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling 200 9ms","method":"POST","requestID":"d9793fb0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling"} device-1 | {"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2112081649038943118 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:S/Ul\r\na=ice-pwd:vFQD1HPX6ZJomwBT1P1YShD2\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BC:E4:67:3E:68:79:72:E9:DB:A3:8F:92:81:F6:42:72:64:05:58:F6:30:E0:D5:A2:55:BF:78:C7:A6:AF:CE:F0\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7242518741313893555 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:L7Q+\r\na=ice-pwd:FYWDyQ995rSwTtO8M0mbow9w\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:4D:AB:86:4C:7C:99:66:AB:AF:56:71:A2:A6:A5:4E:40:26:1D:B1:41:A9:81:0F:61:17:94:29:BA:6C:E0:55\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:611669139 1 udp 2113937151 8e7a0372-984c-4beb-86a6-e7a82f1227a2.local 53679 typ host generation 0 ufrag L7Q+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2690137836 1 udp 1677729535 141.24.211.56 53679 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag L7Q+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4a141ab0-0973-4304-a3b0-efd369607e84","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/4a141ab0-0973-4304-a3b0-efd369607e84'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84'"} device-1 | {"content":{"candidate":"candidate:3892127476 1 udp 2113937151 ec0812ba-2c8b-4211-9a75-0745f5db8131.local 57519 typ host generation 0 ufrag S/Ul network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1960216551 1 udp 1677729535 141.24.211.56 57519 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag S/Ul network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","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/a5b4529e-f822-41aa-80e3-b07ef348b292'"} device-1 | {"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","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/548d99e9-c69b-4a40-9a61-0019efbef782' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"548d99e9-c69b-4a40-9a61-0019efbef782","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b42411c71dea35dcbeb7f8a442edd941","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b42411c71dea35dcbeb7f8a442edd941","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"}}},"level":"info","message":"received a callback","requestID":"b42411c71dea35dcbeb7f8a442edd941"} device-1 | {"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"b42411c71dea35dcbeb7f8a442edd941","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"b42411c71dea35dcbeb7f8a442edd941"} device-1 | {"device":"4a141ab0-0973-4304-a3b0-efd369607e84","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"548d99e9-c69b-4a40-9a61-0019efbef782","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"548d99e9-c69b-4a40-9a61-0019efbef782","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/548d99e9-c69b-4a40-9a61-0019efbef782' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"548d99e9-c69b-4a40-9a61-0019efbef782","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d239dc0633621173b96ce4df85de1e80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"d239dc0633621173b96ce4df85de1e80","responseTime":0,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"}}},"level":"info","message":"received a callback","requestID":"d239dc0633621173b96ce4df85de1e80"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d9874970-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F548d99e9-c69b-4a40-9a61-0019efbef782","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eadb5f31-8cc9-46a2-8b6b-b06114d48c40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.6276789} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":1.98853,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9874970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9874970-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d9874970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782 200 8ms","method":"GET","requestID":"d9874970-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"d239dc0633621173b96ce4df85de1e80","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"d239dc0633621173b96ce4df85de1e80"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d98b6820-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b723374b-2f58-4858-9afb-df63d5ef6aef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.654208} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.138181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d98b6820-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d98b6820-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d98b6820-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling 200 8ms","method":"POST","requestID":"d98b6820-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d98d15d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67bae93b-ea08-4b3c-aa27-4f20f32f8ea2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.6653137} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.074441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d98d15d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d98d15d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d98d15d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling 200 7ms","method":"POST","requestID":"d98d15d0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"8dd67302fde74c9cc048df5c45f9a041"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8dd67302fde74c9cc048df5c45f9a041","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","requestID":"8dd67302fde74c9cc048df5c45f9a041"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.676956,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8dd67302fde74c9cc048df5c45f9a041","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8dd67302fde74c9cc048df5c45f9a041","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","requestID":"8dd67302fde74c9cc048df5c45f9a041"} experiment-1 | {"level":"info","message":"GET /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1 200 8ms","method":"GET","requestID":"8dd67302fde74c9cc048df5c45f9a041","responseTime":8,"status":200,"url":"/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8dd67302fde74c9cc048df5c45f9a041"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"11cd69a39054d8b30184aa02fc62a3e8","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.710353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11cd69a39054d8b30184aa02fc62a3e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11cd69a39054d8b30184aa02fc62a3e8","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Attempting to finish experiment","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d99700e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.722403,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d99700e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d99700e0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","device":"a5b4529e-f822-41aa-80e3-b07ef348b292","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782","device":"4a141ab0-0973-4304-a3b0-efd369607e84","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/548d99e9-c69b-4a40-9a61-0019efbef782' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"548d99e9-c69b-4a40-9a61-0019efbef782","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F548d99e9-c69b-4a40-9a61-0019efbef782': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F548d99e9-c69b-4a40-9a61-0019efbef782","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"eeac792c-aeaa-4c61-a933-55bcfcc68d80","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7441304} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b87cdff-020b-4cf0-a430-8948852307d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7444909} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d99700e0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bcbd09de35a07cdf8a42097e8bce4d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8bcbd09de35a07cdf8a42097e8bce4d7","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e3d07799a1642999dfd9f9a8f1ed7c49","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e3d07799a1642999dfd9f9a8f1ed7c49","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"}}},"level":"info","message":"received a callback","requestID":"8bcbd09de35a07cdf8a42097e8bce4d7"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"}}},"level":"info","message":"received a callback","requestID":"e3d07799a1642999dfd9f9a8f1ed7c49"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d99700e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782 204 28ms","method":"DELETE","requestID":"d99700e0-793e-11ef-9733-5750b05365a5","responseTime":28,"status":204,"url":"/peerconnections/548d99e9-c69b-4a40-9a61-0019efbef782"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"},"level":"info","message":"Successfully finished experiment","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d99e7af0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a141ab0-0973-4304-a3b0-efd369607e84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49fe9cb2-f0aa-4268-85b8-ab028c1201d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7801743} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.248509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d99e7af0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d99e7af0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d99e7af0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling 200 9ms","method":"POST","requestID":"d99e7af0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/4a141ab0-0973-4304-a3b0-efd369607e84/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9a028a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8d6ca89-8486-4ce4-84d8-94a0133419a1': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8d6ca89-8486-4ce4-84d8-94a0133419a1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"1e0b934b-949a-402e-b416-7b72a15fe6b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7876732} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ce27fa0-b6c4-4acb-99de-fee0cba14224","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7879388} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"11cd69a39054d8b30184aa02fc62a3e8","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa5b4529e-f822-41aa-80e3-b07ef348b292","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"687322af-7fe0-4c47-b342-d727eb4e4e34","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.7906094} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9a028a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9a028a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9a028a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling 200 9ms","method":"POST","requestID":"d9a028a0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/a5b4529e-f822-41aa-80e3-b07ef348b292/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11cd69a39054d8b30184aa02fc62a3e8"} experiment-1 | {"level":"info","message":"DELETE /experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1 204 135ms","method":"DELETE","requestID":"11cd69a39054d8b30184aa02fc62a3e8","responseTime":135,"status":204,"url":"/experiments/c8d6ca89-8486-4ce4-84d8-94a0133419a1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"8bcbd09de35a07cdf8a42097e8bce4d7","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"8bcbd09de35a07cdf8a42097e8bce4d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"fe36d95ed28eb823ce9b28fd34b9859e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fe36d95ed28eb823ce9b28fd34b9859e"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"e3d07799a1642999dfd9f9a8f1ed7c49"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.742","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":"e10cea1755b7d6903bf4e7d65444f297"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3317","request_time":"0.766","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":"d8758c1c2fa20c72835c490ba422e9b0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"e3d07799a1642999dfd9f9a8f1ed7c49","responseTime":112,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.03271,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fe36d95ed28eb823ce9b28fd34b9859e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4a141ab0-0973-4304-a3b0-efd369607e84' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a5b4529e-f822-41aa-80e3-b07ef348b292' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a5313f40-db7d-4620-86ce-7d1baba2dc0c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.8848755} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7a6fa37-d140-4d87-9d15-1ab6eafe4416","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.8890605} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c5930f81-a773-4486-8792-204249192902","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.8990018} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df550ead-77d8-42f3-a6b2-2d3876eefdbf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.8992102} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"75e3886d-58d8-424d-a594-ade0c7ae951e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9028308} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fe36d95ed28eb823ce9b28fd34b9859e"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe36d95ed28eb823ce9b28fd34b9859e"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"fe36d95ed28eb823ce9b28fd34b9859e","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q","level":"info","message":"auth send jwt","requestID":"a39bd7a07dd5d11b9bccc063ec03a095"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a39bd7a07dd5d11b9bccc063ec03a095"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.72479,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a39bd7a07dd5d11b9bccc063ec03a095","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049631,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMX0.hWH1GshmwMM1vScC16o2MATqzskaPconNGVi-lGRe3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b34eef3b-c25b-4916-9992-e0187b092036","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9241629} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af8b6c8a-dd31-46fc-b1c7-beb16696af78","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9277112} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e8149216-fd38-4e55-a9a2-068d892b8003","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9378076} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9af0196-7507-4305-b496-8d30b491b85b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9379036} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"031061b9-e084-46b0-bd82-614f87cf4272","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049631.9414666} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a39bd7a07dd5d11b9bccc063ec03a095"} gateway-1 | {"time_local":"23/Sep/2024:00:00:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a39bd7a07dd5d11b9bccc063ec03a095"} device-1 | {"level":"info","message":"POST /devices? 201 34ms","method":"POST","requestID":"a39bd7a07dd5d11b9bccc063ec03a095","responseTime":34,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMn0.tNHUkRDIoaLuChtS-stgt53h5sobPQzyq3EsKPboNxU","level":"info","message":"auth send jwt","requestID":"760273910e9e7d070f738645819712f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"760273910e9e7d070f738645819712f3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"760273910e9e7d070f738645819712f3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.053485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"760273910e9e7d070f738645819712f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049632,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMn0.tNHUkRDIoaLuChtS-stgt53h5sobPQzyq3EsKPboNxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"760273910e9e7d070f738645819712f3","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"436c75dd-4dfb-4038-a3e1-39139732f51b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049632.4287565} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"760273910e9e7d070f738645819712f3","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ba5fbb4-27b3-491e-8946-f088da623e5c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049632.4338074} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"760273910e9e7d070f738645819712f3","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"0f85a157-75b5-4cdd-8bca-87c138720421","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049632.4444268} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"760273910e9e7d070f738645819712f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"760273910e9e7d070f738645819712f3"} gateway-1 | {"time_local":"23/Sep/2024:00:00:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/49303560-34d6-41c1-9ffa-91232789c27f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"760273910e9e7d070f738645819712f3"} device-1 | {"level":"info","message":"PATCH /devices/49303560-34d6-41c1-9ffa-91232789c27f 200 30ms","method":"PATCH","requestID":"760273910e9e7d070f738645819712f3","responseTime":30,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMn0.tNHUkRDIoaLuChtS-stgt53h5sobPQzyq3EsKPboNxU","level":"info","message":"auth send jwt","requestID":"2902e92a779b04dc57bd4c603a27477c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2902e92a779b04dc57bd4c603a27477c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2902e92a779b04dc57bd4c603a27477c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.837465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2902e92a779b04dc57bd4c603a27477c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049632,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzMn0.tNHUkRDIoaLuChtS-stgt53h5sobPQzyq3EsKPboNxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2902e92a779b04dc57bd4c603a27477c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2902e92a779b04dc57bd4c603a27477c"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/websocket 200 21ms","method":"POST","requestID":"2902e92a779b04dc57bd4c603a27477c","responseTime":21,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2902e92a779b04dc57bd4c603a27477c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1184669706c1e2ff9b3f8e8e72e34911","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1184669706c1e2ff9b3f8e8e72e34911","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dc69dace-faa5-410b-a906-322fcb8570ae/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":"1184669706c1e2ff9b3f8e8e72e34911"} device-1 | {"level":"info","message":"OPTIONS /devices/dc69dace-faa5-410b-a906-322fcb8570ae/websocket 200 1ms","method":"OPTIONS","requestID":"1184669706c1e2ff9b3f8e8e72e34911","responseTime":1,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzM30.urH7_fSetJM0OYkmJV-Llg1XFPL974_4UM_ENBKWeTo","level":"info","message":"auth send jwt","requestID":"037b4a205c5cb98dab8ae21885b81a73"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"037b4a205c5cb98dab8ae21885b81a73","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"037b4a205c5cb98dab8ae21885b81a73"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"037b4a205c5cb98dab8ae21885b81a73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049633,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzM30.urH7_fSetJM0OYkmJV-Llg1XFPL974_4UM_ENBKWeTo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"037b4a205c5cb98dab8ae21885b81a73","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"037b4a205c5cb98dab8ae21885b81a73"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/websocket 200 21ms","method":"POST","requestID":"037b4a205c5cb98dab8ae21885b81a73","responseTime":21,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"037b4a205c5cb98dab8ae21885b81a73"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f9151d328105d3c910a6ca542b1539a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5f9151d328105d3c910a6ca542b1539a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dc69dace-faa5-410b-a906-322fcb8570ae? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"5f9151d328105d3c910a6ca542b1539a"} device-1 | {"level":"info","message":"OPTIONS /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 1ms","method":"OPTIONS","requestID":"5f9151d328105d3c910a6ca542b1539a","responseTime":1,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"4d3e6a806f0ddda846c04589fcb16416"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d3e6a806f0ddda846c04589fcb16416","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4d3e6a806f0ddda846c04589fcb16416"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223148,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d3e6a806f0ddda846c04589fcb16416","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d3e6a806f0ddda846c04589fcb16416","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"e9fda131-d911-4cf3-b9a0-1f3cee43c872","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.0733528} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d3e6a806f0ddda846c04589fcb16416","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4056ccda-846c-495d-894b-ed220a1bb451","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.0820434} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4d3e6a806f0ddda846c04589fcb16416","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"02ef9a4e-d15f-4615-becb-f4d5ab813cec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.0951433} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d3e6a806f0ddda846c04589fcb16416","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4d3e6a806f0ddda846c04589fcb16416"} device-1 | {"level":"info","message":"PATCH /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 41ms","method":"PATCH","requestID":"4d3e6a806f0ddda846c04589fcb16416","responseTime":41,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dc69dace-faa5-410b-a906-322fcb8570ae? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.048","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":"4d3e6a806f0ddda846c04589fcb16416"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246067,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"e6ea1729-748e-4029-b14d-391a670957a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.1216395} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1"} device-1 | {"level":"info","message":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 13ms","method":"GET","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1","responseTime":13,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cc9c95f17201cbbe75b8ff81fd1a2e1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"aaa233df69ae342cb473e1d09ac0173b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aaa233df69ae342cb473e1d09ac0173b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaa233df69ae342cb473e1d09ac0173b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959158,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aaa233df69ae342cb473e1d09ac0173b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"aaa233df69ae342cb473e1d09ac0173b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"86693293-e6eb-4c94-b0e6-5bf4631f5cfd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.1435597} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aaa233df69ae342cb473e1d09ac0173b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaa233df69ae342cb473e1d09ac0173b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aaa233df69ae342cb473e1d09ac0173b"} device-1 | {"level":"info","message":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? 200 21ms","method":"GET","requestID":"aaa233df69ae342cb473e1d09ac0173b","responseTime":21,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3dc1a06313cf845edeab0aa00ed2eac0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.190496,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3dc1a06313cf845edeab0aa00ed2eac0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3dc1a06313cf845edeab0aa00ed2eac0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to run experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to book experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully booked experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db0f21f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78334,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.88187,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db0f21f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db0f21f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"d65615a1-c7a4-4897-b0fa-255f99464ad4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.201055} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"e83cd37b-3d79-4869-86ed-2d6f0856273c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2018676} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db0f21f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 18ms","method":"GET","requestID":"db0ed3d0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db0f21f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? 200 18ms","method":"GET","requestID":"db0f21f0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Setting up experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully set up experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db19f760-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db1a4580-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully running experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db1a93a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954554,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db19f760-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db19f760-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177899,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db1a4580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"db1a4580-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.302479,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fba71369-eb2a-4e33-ace0-0e5adc4c868b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.273903} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db1a93a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","rebac_allow":false,"scope_allow":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":"db1a93a0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"d4e2acbd-9a27-4bc1-82ed-4b529b773798","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2764997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"aacfb81f-2564-44a3-99e2-211838ab53cf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2787344} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"db19f760-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"db1a4580-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db1a93a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling 200 18ms","method":"POST","requestID":"db1a93a0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db1dc7f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db19f760-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e151e23-2f92-4899-8217-6fb12a0ca6d0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e151e23-2f92-4899-8217-6fb12a0ca6d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"864ce796-a7b6-4e70-8a34-7f74430fccd1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2898076} device-1 | {"level":"info","message":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 29ms","method":"GET","requestID":"db19f760-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f3903b1-16a8-4074-a7be-de69597544e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2901325} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db1a4580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? 200 28ms","method":"GET","requestID":"db1a4580-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"3dc1a06313cf845edeab0aa00ed2eac0","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ccf0b58-afc8-474b-9219-42f31251e07a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.2943532} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.165455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db1f0070-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db1dc7f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","rebac_allow":false,"scope_allow":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":"db1dc7f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db1dc7f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling 200 13ms","method":"POST","requestID":"db1dc7f0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db77b08f-096b-407f-a9cf-8c13e93751b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.301485} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"3dc1a06313cf845edeab0aa00ed2eac0","responseTime":146,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119495,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db1f0070-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","rebac_allow":false,"scope_allow":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":"db1f0070-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db1f0070-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling 200 12ms","method":"POST","requestID":"db1f0070-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db214a60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f225645-93c5-4a2c-909e-822443ebbfa9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3157003} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.957346,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db214a60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","rebac_allow":false,"scope_allow":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":"db214a60-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"271143d1-eea1-49bf-a5bc-3cefd501d05a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3170805} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db214a60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling 200 11ms","method":"POST","requestID":"db214a60-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460"} device-1 | {"level":"info","message":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 13ms","method":"GET","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460","responseTime":13,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f96d43cf2a89f0c6b568f7d4ccdc3460"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db236d40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db23bb60-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM","level":"info","message":"auth send jwt","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db236d40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db236d40-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49960","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.856748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db23bb60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db23bb60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696486,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.898978120Z"}]},"request_id":"167b4ba3-90c3-4e70-a6b7-c32a5b24de86","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3362167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"b6c549d4-4d63-4aaf-b94f-cf2213be90ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3373466} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"db236d40-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"db23bb60-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db236d40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dc69dace-faa5-410b-a906-322fcb8570ae? 200 22ms","method":"GET","requestID":"db236d40-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:31.937787184Z"}]},"request_id":"4b80b92d-eb7d-4f21-bc0c-26d931160a79","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3467445} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db23bb60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? 200 25ms","method":"GET","requestID":"db23bb60-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Building connection plan","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} 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":"d8fc579b-0d17-452f-889a-b3a7fd632bdf"},{"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":"61137a43-f974-46e2-9d32-053ae556d788"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6ffb61dc-c523-4475-9712-5e74c0bf4e3f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b"} device-1 | {"level":"info","message":"GET /devices/49303560-34d6-41c1-9ffa-91232789c27f? 200 29ms","method":"GET","requestID":"43ae0e6e5d2fae3da92f2ba4eb2aad9b","responseTime":29,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.733805,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db282830-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049634,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNH0.MT5MJwGeQccm7L3EtZGc7bjVDJsUAzUhUdoPE1iMZUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"db282830-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"83c83deb-76f9-4250-833b-34a3bcdb43e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.3728383} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e77455bd-703d-4a7a-aa8c-3ea67c9f1b02","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.373006} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"db282830-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa'","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa'","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"db282830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"db282830-793e-11ef-9733-5750b05365a5","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"db282830-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3dc1a06313cf845edeab0aa00ed2eac0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db3128e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ba0c920-4953-4b1e-911b-e16b49260bae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.4186947} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.866222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db3128e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db3128e0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db3128e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling 200 8ms","method":"POST","requestID":"db3128e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db32af80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca532905-13e3-4554-beb4-e17e1dd91b51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049634.429757} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.814192,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db32af80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","rebac_allow":false,"scope_allow":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":"db32af80-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db32af80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling 200 15ms","method":"POST","requestID":"db32af80-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling"} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2079611186204416100 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:CT75\r\na=ice-pwd:HeylFcBRcG5SMhyXOcQFswZ+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F7:2B:5B:41:8B:DC:0A:2B:2A:84:49:6F:94:FF:51:C8:45:9D:20:D8:45:85:DD:FD:CF:DD:13:DC:91:7B:AD:72\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2223586846 1 udp 2113937151 d21a2d52-24a8-4b55-b401-259b90cecf30.local 40786 typ host generation 0 ufrag CT75 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dc69dace-faa5-410b-a906-322fcb8570ae","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/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:10769505 1 udp 1677729535 141.24.211.56 40786 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag CT75 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc7b88b1c471651a188758b6c874924e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/dc69dace-faa5-410b-a906-322fcb8570ae'"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"fc7b88b1c471651a188758b6c874924e","responseTime":0,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"}}},"level":"info","message":"received a callback","requestID":"fc7b88b1c471651a188758b6c874924e"} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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 6ms","method":"POST","requestID":"fc7b88b1c471651a188758b6c874924e","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"fc7b88b1c471651a188758b6c874924e"} device-1 | {"data":{"peerconnection":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dc69dace-faa5-410b-a906-322fcb8570ae","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/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d960287a51cc988eb377b428cff76b6d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d960287a51cc988eb377b428cff76b6d","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"}}},"level":"info","message":"received a callback","requestID":"d960287a51cc988eb377b428cff76b6d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"dc6fea70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26e61b5f-c22c-4556-b70f-c922a2f832a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.508086} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.451918,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc6fea70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dc6fea70-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"dc6fea70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa 200 8ms","method":"GET","requestID":"dc6fea70-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"d960287a51cc988eb377b428cff76b6d","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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":"d960287a51cc988eb377b428cff76b6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dc74cc70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"613ba5c2-a623-45a4-8b58-e4ac8af0cf3d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.5404034} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.110067,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc74cc70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","rebac_allow":false,"scope_allow":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":"dc74cc70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dc74cc70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling 200 10ms","method":"POST","requestID":"dc74cc70-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dc76a130-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f47365f-072c-4107-8a20-9428d0da05ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.5538483} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.774293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc76a130-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","rebac_allow":false,"scope_allow":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":"dc76a130-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dc76a130-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling 200 11ms","method":"POST","requestID":"dc76a130-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE","level":"info","message":"auth send jwt","requestID":"15e55d04e83b1be274f395922b336f77"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"15e55d04e83b1be274f395922b336f77","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","requestID":"15e55d04e83b1be274f395922b336f77"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.545629,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"15e55d04e83b1be274f395922b336f77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049636,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15e55d04e83b1be274f395922b336f77","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","requestID":"15e55d04e83b1be274f395922b336f77"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15e55d04e83b1be274f395922b336f77"} experiment-1 | {"level":"info","message":"GET /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0 200 17ms","method":"GET","requestID":"15e55d04e83b1be274f395922b336f77","responseTime":17,"status":200,"url":"/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE","level":"info","message":"auth send jwt","requestID":"5bd55e88b35d13e9519a484180a25dc2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5bd55e88b35d13e9519a484180a25dc2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","requestID":"5bd55e88b35d13e9519a484180a25dc2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.413305,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5bd55e88b35d13e9519a484180a25dc2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049636,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5bd55e88b35d13e9519a484180a25dc2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Attempting to finish experiment","requestID":"5bd55e88b35d13e9519a484180a25dc2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.184753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049636,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","device":"dc69dace-faa5-410b-a906-322fcb8570ae","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49303560-34d6-41c1-9ffa-91232789c27f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1514c3b61474c3c8153b4fa436690796","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1514c3b61474c3c8153b4fa436690796","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"03563130-8b63-424d-90fa-da606d1dc55d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.6698744} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6e63add-0303-45d9-935f-55996e6b8621","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.6701152} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"669c66b618a7db3950d8cdd5cbdd37ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"}}},"level":"info","message":"received a callback","requestID":"1514c3b61474c3c8153b4fa436690796"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"669c66b618a7db3950d8cdd5cbdd37ae","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"}}},"level":"info","message":"received a callback","requestID":"669c66b618a7db3950d8cdd5cbdd37ae"} device-1 | {"data":{"peerconnection":"56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa 204 54ms","method":"DELETE","requestID":"dc84aaf0-793e-11ef-9733-5750b05365a5","responseTime":54,"status":204,"url":"/peerconnections/56c4647a-cdb5-4a54-8b4f-e2a6d4933cfa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"},"level":"info","message":"Successfully finished experiment","requestID":"5bd55e88b35d13e9519a484180a25dc2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dc9043b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc69dace-faa5-410b-a906-322fcb8570ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dae44135-a48d-4c67-bd65-c56232808eff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.722236} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.608571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc9043b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae","object_type":"device","rebac_allow":false,"scope_allow":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":"dc9043b0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e151e23-2f92-4899-8217-6fb12a0ca6d0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e151e23-2f92-4899-8217-6fb12a0ca6d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"4879d9af-b791-4b80-9294-5daa986aea20","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.7281544} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dc9043b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dc69dace-faa5-410b-a906-322fcb8570ae/signaling 200 15ms","method":"POST","requestID":"dc9043b0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/dc69dace-faa5-410b-a906-322fcb8570ae/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffc67f1c-f3f1-41f6-b9a7-567a4a670e9e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.728722} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"5bd55e88b35d13e9519a484180a25dc2","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dc9302d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49303560-34d6-41c1-9ffa-91232789c27f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e9bd8ff-9f70-4888-94c9-634f0a57adfd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.7416062} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.236189,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dc9302d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49303560-34d6-41c1-9ffa-91232789c27f","object_type":"device","rebac_allow":false,"scope_allow":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":"dc9302d0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dc9302d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling 200 16ms","method":"POST","requestID":"dc9302d0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/49303560-34d6-41c1-9ffa-91232789c27f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0","requestID":"5bd55e88b35d13e9519a484180a25dc2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bd55e88b35d13e9519a484180a25dc2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3267","request_time":"4.323","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8bb7ee4d0e295ef257a8ede080c32f69"} experiment-1 | {"level":"info","message":"DELETE /experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0 204 175ms","method":"DELETE","requestID":"5bd55e88b35d13e9519a484180a25dc2","responseTime":175,"status":204,"url":"/experiments/0e151e23-2f92-4899-8217-6fb12a0ca6d0"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"1514c3b61474c3c8153b4fa436690796"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"1514c3b61474c3c8153b4fa436690796","responseTime":136,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"669c66b618a7db3950d8cdd5cbdd37ae","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"669c66b618a7db3950d8cdd5cbdd37ae"} device-1 | {"level":"info","message":"postDevices called","requestID":"2c7c43d1f18f61a0802b003ebb3467a4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE","level":"info","message":"auth send jwt","requestID":"2c7c43d1f18f61a0802b003ebb3467a4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.801","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":"1570d6af41b63dcd5db6d9126dbe21f0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.109306,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2c7c43d1f18f61a0802b003ebb3467a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049636,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","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/49303560-34d6-41c1-9ffa-91232789c27f' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7f94f331-05c7-4d95-b46b-61ba21cc302f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8324935} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dc69dace-faa5-410b-a906-322fcb8570ae' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87130c51-20f9-4715-89b6-59981505eac3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8372438} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"bdf28fd9-34b2-4d7b-850e-21fac376671e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.852541} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"754fdde1-68f4-4b09-aa2e-894421b7f7c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8527856} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"90b52995-b023-49b7-957a-d7ddc9de9aa7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8573406} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2c7c43d1f18f61a0802b003ebb3467a4"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c7c43d1f18f61a0802b003ebb3467a4"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"2c7c43d1f18f61a0802b003ebb3467a4","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE","level":"info","message":"auth send jwt","requestID":"27f122cfe82e73ce645d7f27703afa1e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"27f122cfe82e73ce645d7f27703afa1e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"27f122cfe82e73ce645d7f27703afa1e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.711485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"27f122cfe82e73ce645d7f27703afa1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049636,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzNn0.epkCaPnh1ooeRNH_WvsFHPvbB_YTKuccAw8GTmtiERE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b3fe86b0-ef85-4ed6-9c39-7b75f6c52318","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8802989} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03cff994-3949-418e-ae0f-14820ca18172","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8852894} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a46163cc-28bd-4069-9895-f4ac58b83b16","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8959925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e45f7563-a1d8-4937-bd0f-3df1a7b842d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.8962066} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"6e3d9452-8354-4ff0-8035-0389c2ddad87","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049636.9010534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"27f122cfe82e73ce645d7f27703afa1e"} gateway-1 | {"time_local":"23/Sep/2024:00:00:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27f122cfe82e73ce645d7f27703afa1e"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"27f122cfe82e73ce645d7f27703afa1e","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzN30.ue_CpNmHXljIy8iAZK0FnZOU-w_Zi-LNwsqhv5kpMbY","level":"info","message":"auth send jwt","requestID":"7346d37bd5ef1d2a52647c241c2771f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7346d37bd5ef1d2a52647c241c2771f5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7346d37bd5ef1d2a52647c241c2771f5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7346d37bd5ef1d2a52647c241c2771f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049637,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzN30.ue_CpNmHXljIy8iAZK0FnZOU-w_Zi-LNwsqhv5kpMbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7346d37bd5ef1d2a52647c241c2771f5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"4042ec70-830b-48db-89bc-3ce01e4e1b51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049637.4025967} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7346d37bd5ef1d2a52647c241c2771f5","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5f63c5a-369f-41c9-9a26-22b721d2bc29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049637.4086864} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7346d37bd5ef1d2a52647c241c2771f5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"efafa183-7e35-413b-bc9a-3de1ee84524c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049637.4226573} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7346d37bd5ef1d2a52647c241c2771f5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7346d37bd5ef1d2a52647c241c2771f5"} device-1 | {"level":"info","message":"PATCH /devices/c22a8e51-c78a-434e-9321-75489a0e5628 200 35ms","method":"PATCH","requestID":"7346d37bd5ef1d2a52647c241c2771f5","responseTime":35,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628"} gateway-1 | {"time_local":"23/Sep/2024:00:00:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c22a8e51-c78a-434e-9321-75489a0e5628 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7346d37bd5ef1d2a52647c241c2771f5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzN30.ue_CpNmHXljIy8iAZK0FnZOU-w_Zi-LNwsqhv5kpMbY","level":"info","message":"auth send jwt","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.016292,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049637,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzN30.ue_CpNmHXljIy8iAZK0FnZOU-w_Zi-LNwsqhv5kpMbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd"} gateway-1 | {"time_local":"23/Sep/2024:00:00:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/websocket 200 19ms","method":"POST","requestID":"6234ca72b4c4f5e01b1c9ab68030a3bd","responseTime":19,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb4059b5f62f37d93ab1844f05a6e137","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fb4059b5f62f37d93ab1844f05a6e137","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/49ec78be-8987-425f-9d89-b05c9569e59a/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":"fb4059b5f62f37d93ab1844f05a6e137"} device-1 | {"level":"info","message":"OPTIONS /devices/49ec78be-8987-425f-9d89-b05c9569e59a/websocket 200 1ms","method":"OPTIONS","requestID":"fb4059b5f62f37d93ab1844f05a6e137","responseTime":1,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOH0.EbFlyEXOBkYaQO65BAyDAWDIBGz74YoPlND073Fuy68","level":"info","message":"auth send jwt","requestID":"0cd7c562469a16f43097d8d4be712b6d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0cd7c562469a16f43097d8d4be712b6d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0cd7c562469a16f43097d8d4be712b6d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:38Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206003,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0cd7c562469a16f43097d8d4be712b6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049638,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOH0.EbFlyEXOBkYaQO65BAyDAWDIBGz74YoPlND073Fuy68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0cd7c562469a16f43097d8d4be712b6d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0cd7c562469a16f43097d8d4be712b6d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0cd7c562469a16f43097d8d4be712b6d"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/websocket 200 22ms","method":"POST","requestID":"0cd7c562469a16f43097d8d4be712b6d","responseTime":22,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c70f85f3c2cd3556720d4e954a5e3280","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c70f85f3c2cd3556720d4e954a5e3280","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/49ec78be-8987-425f-9d89-b05c9569e59a? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"c70f85f3c2cd3556720d4e954a5e3280"} device-1 | {"level":"info","message":"OPTIONS /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 1ms","method":"OPTIONS","requestID":"c70f85f3c2cd3556720d4e954a5e3280","responseTime":1,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOH0.EbFlyEXOBkYaQO65BAyDAWDIBGz74YoPlND073Fuy68","level":"info","message":"auth send jwt","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:38Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049638,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOH0.EbFlyEXOBkYaQO65BAyDAWDIBGz74YoPlND073Fuy68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"782da939-e529-4f67-8b38-b213916a7348","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.0041337} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b24afe4-4994-4511-93e6-c27c1dde8ad6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.012044} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"5a7e6e75-930c-434e-9587-7b014b828acd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.0235643} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a"} device-1 | {"level":"info","message":"PATCH /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 37ms","method":"PATCH","requestID":"442ff1abaf0cfb5556512e3b3dff7c7a","responseTime":37,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/49ec78be-8987-425f-9d89-b05c9569e59a? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"442ff1abaf0cfb5556512e3b3dff7c7a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I","level":"info","message":"auth send jwt","requestID":"c26a584ad2743baf5f089366ebdb8ca9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c26a584ad2743baf5f089366ebdb8ca9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c26a584ad2743baf5f089366ebdb8ca9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275179,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c26a584ad2743baf5f089366ebdb8ca9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c26a584ad2743baf5f089366ebdb8ca9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"a107eb99-f06f-4fe3-afb5-5b3334017e51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.0556648} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c26a584ad2743baf5f089366ebdb8ca9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c26a584ad2743baf5f089366ebdb8ca9"} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c26a584ad2743baf5f089366ebdb8ca9"} device-1 | {"level":"info","message":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 20ms","method":"GET","requestID":"c26a584ad2743baf5f089366ebdb8ca9","responseTime":20,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I","level":"info","message":"auth send jwt","requestID":"e68f658acfe89797bd1bcaea7364ff03"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e68f658acfe89797bd1bcaea7364ff03","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e68f658acfe89797bd1bcaea7364ff03"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.157953,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e68f658acfe89797bd1bcaea7364ff03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e68f658acfe89797bd1bcaea7364ff03","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"b9993416-8c64-405d-a57d-ac1a7a9ef6a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.083784} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e68f658acfe89797bd1bcaea7364ff03","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e68f658acfe89797bd1bcaea7364ff03"} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e68f658acfe89797bd1bcaea7364ff03"} device-1 | {"level":"info","message":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? 200 17ms","method":"GET","requestID":"e68f658acfe89797bd1bcaea7364ff03","responseTime":17,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I","level":"info","message":"auth send jwt","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"17a88818c2a2928fa5b5ff8aed140837","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"17a88818c2a2928fa5b5ff8aed140837","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17a88818c2a2928fa5b5ff8aed140837","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to run experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to book experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully booked experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de02bf70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de02e680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de02bf70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"de02bf70-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086432,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de02e680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de02e680-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"238a0dcd-2939-46ba-8fdd-b75bf6b3bdad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.1508377} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"de02bf70-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"096ef312-7725-4dc3-845f-2107966f6d32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.1551101} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de02bf70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de02e680-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 14ms","method":"GET","requestID":"de02bf70-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de02e680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? 200 17ms","method":"GET","requestID":"de02e680-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Setting up experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully set up experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de0e0a10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de0e5830-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully running experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.347758,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.340238,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de0e0a10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"de0e0a10-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49692","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"bfd9ec46-9a78-4872-bfe4-b0a83b07d139","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2348025} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"140d2523-ca5d-49f6-8cce-4f8c61981919","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2356873} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"de0e0a10-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:49692","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.731912,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"5b222e71-b292-425a-b6e1-113d0b00d4c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2367032} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de0e5830-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","rebac_allow":false,"scope_allow":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":"de0e5830-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ba12b9b-76aa-4ca3-a971-f96457e8ce0e#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"42839d1a-32d5-4ff6-a848-fcd94eb33a19","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2450895} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d51f5615-674b-4e46-8f92-4b494b9bf120","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2454882} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de0e0a10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? 200 30ms","method":"GET","requestID":"de0e0a10-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"17a88818c2a2928fa5b5ff8aed140837","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 33ms","method":"GET","requestID":"de0dbbf0-793e-11ef-9733-5750b05365a5","responseTime":33,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de0e5830-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling 200 31ms","method":"POST","requestID":"de0e5830-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de13d670-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de144ba0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87ba0a64-0582-484a-b5b2-79fc392c3028","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.264251} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"level":"info","message":"POST /experiments? 201 167ms","method":"POST","requestID":"17a88818c2a2928fa5b5ff8aed140837","responseTime":167,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.004538,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de13d670-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","rebac_allow":false,"scope_allow":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":"de13d670-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec3bab83-8733-460d-a9f3-586a71ca474f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2670064} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.908023,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de144ba0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","rebac_allow":false,"scope_allow":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":"de144ba0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I","level":"info","message":"auth send jwt","requestID":"7d3ea11b839d65c47160a34b74b08a88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7d3ea11b839d65c47160a34b74b08a88","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de13d670-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling 200 18ms","method":"POST","requestID":"de13d670-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d3ea11b839d65c47160a34b74b08a88"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de1758e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de144ba0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling 200 22ms","method":"POST","requestID":"de144ba0-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.372075,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7d3ea11b839d65c47160a34b74b08a88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7d3ea11b839d65c47160a34b74b08a88","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4501565-e475-470b-937f-08f11edf5901","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2843204} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.193171,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de1758e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","rebac_allow":false,"scope_allow":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":"de1758e0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de1758e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling 200 12ms","method":"POST","requestID":"de1758e0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"60859656-c278-46b1-bd43-a86eea3c6aaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.2903912} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7d3ea11b839d65c47160a34b74b08a88","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de19a2d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de19f0f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d3ea11b839d65c47160a34b74b08a88"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} device-1 | {"level":"info","message":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 23ms","method":"GET","requestID":"7d3ea11b839d65c47160a34b74b08a88","responseTime":23,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.618696,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d3ea11b839d65c47160a34b74b08a88"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de19a2d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de19a2d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:49678","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.306053,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I","level":"info","message":"auth send jwt","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de19f0f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"de19f0f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.852509437Z"}]},"request_id":"c44b4745-1c6f-446e-bdc1-6eba8110407d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.303631} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de19a2d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"266887fb-f64d-45c6-a3b0-cfe26ec2e3d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.3071086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"de19f0f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de19a2d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.833446,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} device-1 | {"level":"info","message":"GET /devices/49ec78be-8987-425f-9d89-b05c9569e59a? 200 17ms","method":"GET","requestID":"de19a2d0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de19f0f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? 200 18ms","method":"GET","requestID":"de19f0f0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Building connection plan","requestID":"17a88818c2a2928fa5b5ff8aed140837"} 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":"d5a42413-395f-4a24-9bac-c853f3475fac"},{"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":"26926554-2131-44aa-a35f-78f47be0f685"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7c7d95c6-1b87-4fea-90ac-2069b069a550"}]},"level":"info","message":"Built pairwise service configurations","requestID":"17a88818c2a2928fa5b5ff8aed140837"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"17a88818c2a2928fa5b5ff8aed140837"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:36.895962864Z"}]},"request_id":"9588cc7b-4688-4ee3-9aa7-fe422ae43165","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.3148675} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.939707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e"} gateway-1 | {"time_local":"23/Sep/2024:00:00:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e"} device-1 | {"level":"info","message":"GET /devices/c22a8e51-c78a-434e-9321-75489a0e5628? 200 14ms","method":"GET","requestID":"b98e7aa3c7defe5bfd825c3d8866aa1e","responseTime":14,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de1d2540-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049639,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTYzOX0.dM7tm6tHUwOrJ1MaW9Sch-RxALiXWUoE279UC-_w25I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"de1d2540-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"079acf2c-0299-4c82-9137-e37d9816ca7e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.3295355} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c64eb7eb-1190-4203-b35c-b615bf322054","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.3298297} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"de1d2540-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216'","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216'","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"de1d2540-793e-11ef-9733-5750b05365a5","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"de1d2540-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"17a88818c2a2928fa5b5ff8aed140837"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de253b90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7006772f-e3d9-47d3-a73e-2535ef7f85e5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.37424} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.603427,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de253b90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","rebac_allow":false,"scope_allow":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":"de253b90-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de253b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling 200 9ms","method":"POST","requestID":"de253b90-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de26e940-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79e8c6db-84f8-4d55-bf06-540fc4727589","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049639.3843007} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.629156,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de26e940-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de26e940-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de26e940-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling 200 8ms","method":"POST","requestID":"de26e940-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling"} device-1 | {"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1290004362857515161 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:PBoh\r\na=ice-pwd:WHhaFVwcw4HalmDrE3p3SzkG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 52:33:2C:8D:F5:78:8C:27:F2:26:A2:75:99:5B:FF:55:A0:A7:0C:05:1A:80:B8:1D:E0:ED:0C:77:0D:C6:A4:F4\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2009112767 1 udp 2113937151 5f725d5d-c268-4eeb-8455-294e8c79077e.local 36033 typ host generation 0 ufrag PBoh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3840606636 1 udp 1677729535 141.24.211.56 36033 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PBoh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"49ec78be-8987-425f-9d89-b05c9569e59a","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/c063fe6a-a494-4c80-a046-9ea90950a216' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","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/49ec78be-8987-425f-9d89-b05c9569e59a'"} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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":"77cfeb27f9033c82c1ce4c777870288c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"77cfeb27f9033c82c1ce4c777870288c","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"}}},"level":"info","message":"received a callback","requestID":"77cfeb27f9033c82c1ce4c777870288c"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"77cfeb27f9033c82c1ce4c777870288c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"77cfeb27f9033c82c1ce4c777870288c","responseTime":5,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49ec78be-8987-425f-9d89-b05c9569e59a","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/c063fe6a-a494-4c80-a046-9ea90950a216' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"50e977fc72d9d4b556af72147613ab72","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"50e977fc72d9d4b556af72147613ab72","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"}}},"level":"info","message":"received a callback","requestID":"50e977fc72d9d4b556af72147613ab72"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"df63d610-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc063fe6a-a494-4c80-a046-9ea90950a216","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9140d30-b434-4f13-a384-dedc11b53404","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.4623177} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.548472,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df63d610-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"df63d610-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"df63d610-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216 200 9ms","method":"GET","requestID":"df63d610-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"50e977fc72d9d4b556af72147613ab72","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"50e977fc72d9d4b556af72147613ab72"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df689100-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"059eba76-0a90-4851-8400-05efdd46f101","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.4924054} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.405089,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df689100-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df689100-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df689100-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling 200 8ms","method":"POST","requestID":"df689100-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df6a17a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92d5f800-df59-4ef9-a1c3-1e74104fc3c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.503556} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.472553,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df6a17a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df6a17a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df6a17a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling 200 10ms","method":"POST","requestID":"df6a17a0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE","level":"info","message":"auth send jwt","requestID":"84b2351d9103aed632a5e627b1a9ed25"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84b2351d9103aed632a5e627b1a9ed25","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","requestID":"84b2351d9103aed632a5e627b1a9ed25"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.887355,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"84b2351d9103aed632a5e627b1a9ed25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049641,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84b2351d9103aed632a5e627b1a9ed25","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","requestID":"84b2351d9103aed632a5e627b1a9ed25"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84b2351d9103aed632a5e627b1a9ed25"} experiment-1 | {"level":"info","message":"GET /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e 200 17ms","method":"GET","requestID":"84b2351d9103aed632a5e627b1a9ed25","responseTime":17,"status":200,"url":"/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE","level":"info","message":"auth send jwt","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c633f9e0407e87d6e3fef499ac75ee18","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.985069,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c633f9e0407e87d6e3fef499ac75ee18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049641,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c633f9e0407e87d6e3fef499ac75ee18","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Attempting to finish experiment","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"df784870-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.769991,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df784870-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049641,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df784870-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216","device":"49ec78be-8987-425f-9d89-b05c9569e59a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c22a8e51-c78a-434e-9321-75489a0e5628","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/c063fe6a-a494-4c80-a046-9ea90950a216' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c063fe6a-a494-4c80-a046-9ea90950a216","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc063fe6a-a494-4c80-a046-9ea90950a216': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc063fe6a-a494-4c80-a046-9ea90950a216","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"5e8d76ac-96ec-4971-9b8c-c94e291db740","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6149395} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d3504c396613d0c503518fa727a308c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0d3504c396613d0c503518fa727a308c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4a948c8-d878-45e0-a990-5cef9995b095","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6154583} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"67b67fdff413b961f2424fca7c52a5e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"}}},"level":"info","message":"received a callback","requestID":"0d3504c396613d0c503518fa727a308c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"df784870-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"67b67fdff413b961f2424fca7c52a5e9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"}}},"level":"info","message":"received a callback","requestID":"67b67fdff413b961f2424fca7c52a5e9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"df784870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216 204 43ms","method":"DELETE","requestID":"df784870-793e-11ef-9733-5750b05365a5","responseTime":43,"status":204,"url":"/peerconnections/c063fe6a-a494-4c80-a046-9ea90950a216"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"},"level":"info","message":"Successfully finished experiment","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df825a90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49ec78be-8987-425f-9d89-b05c9569e59a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e653234-cbf7-4c05-83cf-58249f583fd2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6652327} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.513442,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df825a90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a","object_type":"device","rebac_allow":false,"scope_allow":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":"df825a90-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df825a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling 200 14ms","method":"POST","requestID":"df825a90-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/49ec78be-8987-425f-9d89-b05c9569e59a/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ba12b9b-76aa-4ca3-a971-f96457e8ce0e': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"a530e91b-8861-4756-a5a9-9786a7b4c074","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6717806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9166252-90ae-43e7-80ce-33ff3ca295b2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6721034} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c633f9e0407e87d6e3fef499ac75ee18","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df8519b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22a8e51-c78a-434e-9321-75489a0e5628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fef2e552-c127-4fa9-a92d-cbad9b25e143","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.6808414} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.152693,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df8519b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628","object_type":"device","rebac_allow":false,"scope_allow":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":"df8519b0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df8519b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling 200 11ms","method":"POST","requestID":"df8519b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c22a8e51-c78a-434e-9321-75489a0e5628/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c633f9e0407e87d6e3fef499ac75ee18"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3269","request_time":"4.282","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4a9518019ece9288c230e5d5a25a090b"} experiment-1 | {"level":"info","message":"DELETE /experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e 204 158ms","method":"DELETE","requestID":"c633f9e0407e87d6e3fef499ac75ee18","responseTime":158,"status":204,"url":"/experiments/9ba12b9b-76aa-4ca3-a971-f96457e8ce0e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"0d3504c396613d0c503518fa727a308c","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d3504c396613d0c503518fa727a308c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"67b67fdff413b961f2424fca7c52a5e9","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"67b67fdff413b961f2424fca7c52a5e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE","level":"info","message":"auth send jwt","requestID":"5e1bab739d45d3c951add8ba7f2e5b66"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5e1bab739d45d3c951add8ba7f2e5b66"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.800","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":"adede9d49e8b546adc8b3147dd49d1e6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.81348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5e1bab739d45d3c951add8ba7f2e5b66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049641,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c22a8e51-c78a-434e-9321-75489a0e5628' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a0ba7023-3bcc-4d53-9da9-d7a590c46d29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.7607257} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/49ec78be-8987-425f-9d89-b05c9569e59a' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4223ba27-6fd4-4baa-b216-c2e8a1d27bef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.7653809} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9e848bac-b9e1-4f86-8dca-1eae4a45952d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.775097} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e5a717a-5866-4c2a-b011-29d4226b16a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.7754457} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"acd07939-b32f-4fcb-a14b-479f4e67d4d0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.7792656} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5e1bab739d45d3c951add8ba7f2e5b66"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e1bab739d45d3c951add8ba7f2e5b66"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"5e1bab739d45d3c951add8ba7f2e5b66","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE","level":"info","message":"auth send jwt","requestID":"00c3519f1a201a29e1e9d924b90497f4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"00c3519f1a201a29e1e9d924b90497f4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"00c3519f1a201a29e1e9d924b90497f4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.799563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00c3519f1a201a29e1e9d924b90497f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049641,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0MX0.K3KnKH3x8CmIU9d7sUC_n1fKBwdzqPV81NbqI51aloE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"157508f4-dd2e-486e-bb80-e99289249a33","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.8075452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fc58006-1b91-4c69-a58d-c3ea6c34756c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.8121848} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6f57305f-a4ac-4c3b-b77b-72fd8f0459ef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.8232055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ea8c521-3b74-4ee2-b007-1230a1334474","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.8234875} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"8a028325-8b51-40b6-b671-7355a5ae7b3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049641.827828} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"00c3519f1a201a29e1e9d924b90497f4"} gateway-1 | {"time_local":"23/Sep/2024:00:00:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00c3519f1a201a29e1e9d924b90497f4"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"00c3519f1a201a29e1e9d924b90497f4","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Mn0.J0L8yt84JT5mJcu-n-jY5uB9cEINO2b4iGbJqx-bFqM","level":"info","message":"auth send jwt","requestID":"ff3ea90f1c2c81baaa7da39dbe495992"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ff3ea90f1c2c81baaa7da39dbe495992"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.733488,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff3ea90f1c2c81baaa7da39dbe495992","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049642,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Mn0.J0L8yt84JT5mJcu-n-jY5uB9cEINO2b4iGbJqx-bFqM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"0e25c1eb-6a10-4aa5-ba60-8e6b86a91406","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049642.31656} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"069addde-7b7d-4faf-be5d-59a7c48dc426","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049642.3232243} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"e6e3870a-8c34-41c4-9000-c44007614fbc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049642.3355086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ff3ea90f1c2c81baaa7da39dbe495992"} device-1 | {"level":"info","message":"PATCH /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09 200 35ms","method":"PATCH","requestID":"ff3ea90f1c2c81baaa7da39dbe495992","responseTime":35,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"} gateway-1 | {"time_local":"23/Sep/2024:00:00:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ff3ea90f1c2c81baaa7da39dbe495992"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Mn0.J0L8yt84JT5mJcu-n-jY5uB9cEINO2b4iGbJqx-bFqM","level":"info","message":"auth send jwt","requestID":"75d9e99df506c05c2f7e2ee757da5447"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"75d9e99df506c05c2f7e2ee757da5447","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"75d9e99df506c05c2f7e2ee757da5447"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.318245,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"75d9e99df506c05c2f7e2ee757da5447","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049642,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Mn0.J0L8yt84JT5mJcu-n-jY5uB9cEINO2b4iGbJqx-bFqM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"75d9e99df506c05c2f7e2ee757da5447","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"75d9e99df506c05c2f7e2ee757da5447"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/websocket 200 18ms","method":"POST","requestID":"75d9e99df506c05c2f7e2ee757da5447","responseTime":18,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"75d9e99df506c05c2f7e2ee757da5447"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa3931489a69cccd1a7f28d712a31e6a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fa3931489a69cccd1a7f28d712a31e6a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/websocket 200 1ms","method":"OPTIONS","requestID":"fa3931489a69cccd1a7f28d712a31e6a","responseTime":1,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/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":"fa3931489a69cccd1a7f28d712a31e6a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs","level":"info","message":"auth send jwt","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205652,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0644ab6a4ad049bbb07b15f818c6d5bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049643,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/websocket 200 21ms","method":"POST","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf","responseTime":21,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0644ab6a4ad049bbb07b15f818c6d5bf"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ffbebb182d5e91df95dde845e6024e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2ffbebb182d5e91df95dde845e6024e0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"2ffbebb182d5e91df95dde845e6024e0"} device-1 | {"level":"info","message":"OPTIONS /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 1ms","method":"OPTIONS","requestID":"2ffbebb182d5e91df95dde845e6024e0","responseTime":1,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs","level":"info","message":"auth send jwt","requestID":"ed1473324599a78f788de825ac9019fc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed1473324599a78f788de825ac9019fc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ed1473324599a78f788de825ac9019fc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ed1473324599a78f788de825ac9019fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049643,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed1473324599a78f788de825ac9019fc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"8eca1afd-bd1d-4587-9773-6e70da456048","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049643.9532075} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed1473324599a78f788de825ac9019fc","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cd7f6e6-034a-46ac-8aa6-bf058b297100","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049643.9607046} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ed1473324599a78f788de825ac9019fc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"1302da94-e27b-4577-afa7-a3accd8cbcf0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049643.973962} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ed1473324599a78f788de825ac9019fc","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ed1473324599a78f788de825ac9019fc"} device-1 | {"level":"info","message":"PATCH /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 38ms","method":"PATCH","requestID":"ed1473324599a78f788de825ac9019fc","responseTime":38,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","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":"ed1473324599a78f788de825ac9019fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs","level":"info","message":"auth send jwt","requestID":"5750c5f5af68b29321bdc87c7824399b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5750c5f5af68b29321bdc87c7824399b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5750c5f5af68b29321bdc87c7824399b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.273073,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5750c5f5af68b29321bdc87c7824399b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049643,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0M30.Wif9CUGu5Gbzm6TbGOMPn4KilR5OMRdO330tmEkFJGs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5750c5f5af68b29321bdc87c7824399b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"463aebf4-8a79-4a81-a6cf-85ab9cf7d16f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.0023677} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5750c5f5af68b29321bdc87c7824399b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5750c5f5af68b29321bdc87c7824399b"} device-1 | {"level":"info","message":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? 200 17ms","method":"GET","requestID":"5750c5f5af68b29321bdc87c7824399b","responseTime":17,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5750c5f5af68b29321bdc87c7824399b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ","level":"info","message":"auth send jwt","requestID":"3eda82606064fa5ce78d3d3e24424af7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3eda82606064fa5ce78d3d3e24424af7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3eda82606064fa5ce78d3d3e24424af7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.838814,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3eda82606064fa5ce78d3d3e24424af7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3eda82606064fa5ce78d3d3e24424af7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"807c66d1-79a6-4f74-ab19-daafded033a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.026765} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3eda82606064fa5ce78d3d3e24424af7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3eda82606064fa5ce78d3d3e24424af7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3eda82606064fa5ce78d3d3e24424af7"} device-1 | {"level":"info","message":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 15ms","method":"GET","requestID":"3eda82606064fa5ce78d3d3e24424af7","responseTime":15,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ","level":"info","message":"auth send jwt","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"461dfe83ec7e8d0b02b266fa925e70e9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.915637,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"461dfe83ec7e8d0b02b266fa925e70e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"461dfe83ec7e8d0b02b266fa925e70e9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to run experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to book experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully booked experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0f4af40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.327463,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0f4af40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0f4af40-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.443102,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"ed0fbbf7-5356-4354-a0f0-126dd3c818bf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.095695} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e0f4af40-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"b23bd55a-5fa6-4071-a779-bded35d0552d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1008966} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0f4af40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? 200 19ms","method":"GET","requestID":"e0f4af40-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 21ms","method":"GET","requestID":"e0f4fd60-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Setting up experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully locked booking for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to update booking for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully updated booking for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully set up experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0fee870-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0ff3690-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully running experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0fee870-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0fee870-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58124","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"1ca33eb0-7c48-4771-95ca-3792d69db0b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1648574} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e0fee870-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"97e3b763-b35d-42b9-b3ff-451ac4eef6fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1669006} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0146653-a553-4b82-a373-a26b1b676b10","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1673596} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58124","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.399214,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0ff3690-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","rebac_allow":false,"scope_allow":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":"e0ff3690-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcfb773cd-1acb-40bf-a25f-becc30e95802#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcfb773cd-1acb-40bf-a25f-becc30e95802","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"1cd4006d-11ce-46af-a49f-9a952298ffeb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1762185} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0fee870-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2722c75-92d9-4b21-a437-66abb3f82e38","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.176625} device-1 | {"level":"info","message":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 26ms","method":"GET","requestID":"e0fee870-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"461dfe83ec7e8d0b02b266fa925e70e9","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? 200 29ms","method":"GET","requestID":"e0fe9a50-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0ff3690-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling 200 26ms","method":"POST","requestID":"e0ff3690-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e103f180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e10466b0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"461dfe83ec7e8d0b02b266fa925e70e9","responseTime":152,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1333558f-45e1-4a25-9ea6-06f8165bfa75","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1921248} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.337712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e103f180-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","rebac_allow":false,"scope_allow":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":"e103f180-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d4d1f5ac-c279-4fb8-bfec-c858e39782a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.1934736} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e10466b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","rebac_allow":false,"scope_allow":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":"e10466b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ","level":"info","message":"auth send jwt","requestID":"345a0987f07f67b71bbcd560687946a7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"345a0987f07f67b71bbcd560687946a7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"345a0987f07f67b71bbcd560687946a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e103f180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling 200 14ms","method":"POST","requestID":"e103f180-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e10466b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling 200 12ms","method":"POST","requestID":"e10466b0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857079,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"345a0987f07f67b71bbcd560687946a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1068990-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"345a0987f07f67b71bbcd560687946a7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"bb9e407a-9171-475c-a13d-9f2a1af7a16b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2065115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"345a0987f07f67b71bbcd560687946a7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0103804-626d-4ccc-b042-5347dd452da0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2069747} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.497265,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e1068990-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","rebac_allow":false,"scope_allow":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":"e1068990-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"345a0987f07f67b71bbcd560687946a7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"345a0987f07f67b71bbcd560687946a7"} device-1 | {"level":"info","message":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? 200 13ms","method":"GET","requestID":"345a0987f07f67b71bbcd560687946a7","responseTime":13,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1068990-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling 200 10ms","method":"POST","requestID":"e1068990-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1085e50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1088560-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ","level":"info","message":"auth send jwt","requestID":"d83a336315e06a5696788dba97d0ab58"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d83a336315e06a5696788dba97d0ab58","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d83a336315e06a5696788dba97d0ab58"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e1085e50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1085e50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58110","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.516429,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58124","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58124","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.726641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e1088560-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1088560-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d83a336315e06a5696788dba97d0ab58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d83a336315e06a5696788dba97d0ab58","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.775055978Z"}]},"request_id":"126b86a9-9c69-44e3-8284-fae1a2250ec5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2236834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"1669fa76-772a-4279-8414-9908ab1f1ba2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.224516} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1085e50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:41.823180167Z"}]},"request_id":"a26fd6ec-0e49-4390-a121-45532cce317f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.225503} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1088560-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d83a336315e06a5696788dba97d0ab58","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1088560-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 16ms","method":"GET","requestID":"e1088560-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1085e50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09? 200 18ms","method":"GET","requestID":"e1085e50-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d83a336315e06a5696788dba97d0ab58"} gateway-1 | {"time_local":"23/Sep/2024:00:00:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d83a336315e06a5696788dba97d0ab58"} device-1 | {"level":"info","message":"GET /devices/9203f3d3-91af-435a-bfa1-2740b1d89495? 200 16ms","method":"GET","requestID":"d83a336315e06a5696788dba97d0ab58","responseTime":16,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Building connection plan","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} 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":"2b35bc18-ff0e-406e-8f5d-86f3697ae91f"},{"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":"10ef42e2-811f-45a5-83d2-e766b13f784c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d41b1b12-c11c-413b-8712-c54395a71de7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.839635,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e10b6b90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049644,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0NH0.gK4mcC9pQvRULdDTgbUC0tsRs1kJ2-js3STVkmOwgCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"86ca1b12-7b9d-48ab-be80-5fef8d4196b5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2453048} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44f16ad7-b2c9-45ea-a833-bc4948bafc37","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2456126} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c'","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c'","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e10b6b90-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"461dfe83ec7e8d0b02b266fa925e70e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1135ad0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b55888c-fad3-47ff-b049-97f64e521e64","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.2901816} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.814139,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e1135ad0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1135ad0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1135ad0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling 200 11ms","method":"POST","requestID":"e1135ad0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e11556a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f66733a0-8887-46ea-b0c2-7ae42e92cb46","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049644.3030658} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e11556a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e11556a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e11556a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling 200 11ms","method":"POST","requestID":"e11556a0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling"} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4809242517861678701 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:1scX\r\na=ice-pwd:whz4ri36SltSCrYmAnSB9f1M\r\na=ice-options:trickle\r\na=fingerprint:sha-256 42:33:17:BC:77:D4:97:C1:2F:AD:BB:2E:F7:E1:8D:CB:FC:7C:47:6D:B2:1E:56:1D:5E:F0:D1:16:91:7B:AE:60\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:673497473 1 udp 2113937151 a98880e2-d2a8-468e-88db-855ce5c61341.local 55800 typ host generation 0 ufrag 1scX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2886315006 1 udp 1677729535 141.24.211.56 55800 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1scX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","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/347e9a60-b04b-4754-9437-a6faba5c735c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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":"7454654523d090a2c1e6f946c033db49","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/9203f3d3-91af-435a-bfa1-2740b1d89495'"} device-1 | {"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7454654523d090a2c1e6f946c033db49","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"}}},"level":"info","message":"received a callback","requestID":"7454654523d090a2c1e6f946c033db49"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"7454654523d090a2c1e6f946c033db49","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"7454654523d090a2c1e6f946c033db49"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9203f3d3-91af-435a-bfa1-2740b1d89495","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/347e9a60-b04b-4754-9437-a6faba5c735c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"168ac659f4612c5dce563392becc10d9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"168ac659f4612c5dce563392becc10d9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"}}},"level":"info","message":"received a callback","requestID":"168ac659f4612c5dce563392becc10d9"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e2515910-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F347e9a60-b04b-4754-9437-a6faba5c735c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af91d198-e70e-4d65-8bf8-45583634a405","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.3742461} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.245737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2515910-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2515910-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e2515910-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c 200 8ms","method":"GET","requestID":"e2515910-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"168ac659f4612c5dce563392becc10d9","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"168ac659f4612c5dce563392becc10d9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2561400-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43492bbb-b5f5-4077-8085-755df330ec56","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.4063895} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150323,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2561400-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","rebac_allow":false,"scope_allow":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":"e2561400-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2561400-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling 200 13ms","method":"POST","requestID":"e2561400-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2585df0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f79c055-ca50-4225-a210-1c7d136c4ef6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.4215682} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.204553,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2585df0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","rebac_allow":false,"scope_allow":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":"e2585df0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2585df0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling 200 12ms","method":"POST","requestID":"e2585df0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68","level":"info","message":"auth send jwt","requestID":"f8f8125d036ac8fdda1af1812ef01bf8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f8f8125d036ac8fdda1af1812ef01bf8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","requestID":"f8f8125d036ac8fdda1af1812ef01bf8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.209267,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f8f8125d036ac8fdda1af1812ef01bf8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049646,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8f8125d036ac8fdda1af1812ef01bf8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","requestID":"f8f8125d036ac8fdda1af1812ef01bf8"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8f8125d036ac8fdda1af1812ef01bf8"} experiment-1 | {"level":"info","message":"GET /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802 200 15ms","method":"GET","requestID":"f8f8125d036ac8fdda1af1812ef01bf8","responseTime":15,"status":200,"url":"/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68","level":"info","message":"auth send jwt","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.20128,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049646,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Attempting to finish experiment","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e2661990-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.070046,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2661990-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049646,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e2661990-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c","device":"9203f3d3-91af-435a-bfa1-2740b1d89495","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1881a2e0-d6fe-447d-a663-515ef2ee2c09","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/347e9a60-b04b-4754-9437-a6faba5c735c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F347e9a60-b04b-4754-9437-a6faba5c735c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F347e9a60-b04b-4754-9437-a6faba5c735c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"e975dc9c-9b6d-4787-aa69-a9cb4d2c02f1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.5324287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8811c8dd-09ce-4a8c-a083-524b76013c2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.532892} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76ea50ba1cc8c6e145edef5d558be104","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"76ea50ba1cc8c6e145edef5d558be104","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e2661990-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"}}},"level":"info","message":"received a callback","requestID":"76ea50ba1cc8c6e145edef5d558be104"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"13c7414e9fce097c48eba3550e86c19a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"13c7414e9fce097c48eba3550e86c19a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"}}},"level":"info","message":"received a callback","requestID":"13c7414e9fce097c48eba3550e86c19a"} device-1 | {"data":{"peerconnection":"347e9a60-b04b-4754-9437-a6faba5c735c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e2661990-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c 204 51ms","method":"DELETE","requestID":"e2661990-793e-11ef-9733-5750b05365a5","responseTime":51,"status":204,"url":"/peerconnections/347e9a60-b04b-4754-9437-a6faba5c735c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"},"level":"info","message":"Successfully finished experiment","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2718b40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9203f3d3-91af-435a-bfa1-2740b1d89495","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f98bcb1c-f4b1-4a07-8961-48b208edb7d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.5881999} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.230433,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2718b40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495","object_type":"device","rebac_allow":false,"scope_allow":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":"e2718b40-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcfb773cd-1acb-40bf-a25f-becc30e95802': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcfb773cd-1acb-40bf-a25f-becc30e95802","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ee505e74-deab-4b8b-865e-92ed74cdaadb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.5945456} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2718b40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9203f3d3-91af-435a-bfa1-2740b1d89495/signaling 200 16ms","method":"POST","requestID":"e2718b40-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/9203f3d3-91af-435a-bfa1-2740b1d89495/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a56b41a-1828-4b39-9648-9b066fc28a6f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.5956242} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2749880-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1881a2e0-d6fe-447d-a663-515ef2ee2c09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3ae89dc-51b1-43c7-af16-04c13793cf51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.6086211} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.699949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e2749880-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09","object_type":"device","rebac_allow":false,"scope_allow":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":"e2749880-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2749880-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling 200 15ms","method":"POST","requestID":"e2749880-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3270","request_time":"4.303","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e76e070f47a887c4ed08924ae8677756"} experiment-1 | {"level":"info","message":"DELETE /experiments/cfb773cd-1acb-40bf-a25f-becc30e95802 204 178ms","method":"DELETE","requestID":"16acc5ed18d168f6c0b5b89eb09fd0ed","responseTime":178,"status":204,"url":"/experiments/cfb773cd-1acb-40bf-a25f-becc30e95802"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"76ea50ba1cc8c6e145edef5d558be104","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"76ea50ba1cc8c6e145edef5d558be104"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"13c7414e9fce097c48eba3550e86c19a","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"13c7414e9fce097c48eba3550e86c19a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68","level":"info","message":"auth send jwt","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.785","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":"e26832b04141f16496a6381460f5d523"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.042298,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049646,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1881a2e0-d6fe-447d-a663-515ef2ee2c09' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"847e0a72-0b3f-417b-98c7-76b17bd1981a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.6925597} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9203f3d3-91af-435a-bfa1-2740b1d89495' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdec89eb-a9ae-48fa-9638-a11854fe1bcd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.6975572} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"171faa94-95a3-4b95-9d66-60cc420adc5c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.7117295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8c54297-5647-4664-836d-8fd4c004cfbf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.7126546} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"0c73ccce-1cad-4b9b-8192-068755fc6473","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.7166398} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"fa1ec3587fc9949127df8d28e7ebf8bc","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68","level":"info","message":"auth send jwt","requestID":"5e32a90f7a7668a4303f19c2ad3093d1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5e32a90f7a7668a4303f19c2ad3093d1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.701278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5e32a90f7a7668a4303f19c2ad3093d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049646,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0Nn0.sHIovD8VS_904fAKaQfWve3ejnu8jr7MpLU4a3mqE68"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"531f0e9b-3919-4d87-ada3-9104b3feb47d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.7392108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ee811b0-f266-44e8-9a17-e80b2394b319","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.743658} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"30ba4c40-2d95-450b-a8d3-f02e04295f65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.753924} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79912b42-e004-4740-a1f3-e5cc7fe1f156","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.7540243} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"692c5cae-81be-4c1f-88f2-e944f9037f93","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049646.757812} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5e32a90f7a7668a4303f19c2ad3093d1"} gateway-1 | {"time_local":"23/Sep/2024:00:00:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e32a90f7a7668a4303f19c2ad3093d1"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"5e32a90f7a7668a4303f19c2ad3093d1","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0N30.FiqIB30TKOK6p2AYSoGLBmOPiQntC29j1sfFbTcIyqs","level":"info","message":"auth send jwt","requestID":"00abf6616ae6aebddd8a3596b3fb9aac"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"00abf6616ae6aebddd8a3596b3fb9aac"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00abf6616ae6aebddd8a3596b3fb9aac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049647,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0N30.FiqIB30TKOK6p2AYSoGLBmOPiQntC29j1sfFbTcIyqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"4612a2ed-1660-486a-98e1-a35d53f8c262","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049647.2415733} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61f47086-0127-4786-9a29-dd4e96fe6fdf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049647.2490084} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"8fa497a2-0ec6-439c-bb89-6cc98d54a1fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049647.2611148} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"00abf6616ae6aebddd8a3596b3fb9aac"} gateway-1 | {"time_local":"23/Sep/2024:00:00:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"00abf6616ae6aebddd8a3596b3fb9aac"} device-1 | {"level":"info","message":"PATCH /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b 200 36ms","method":"PATCH","requestID":"00abf6616ae6aebddd8a3596b3fb9aac","responseTime":36,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0N30.FiqIB30TKOK6p2AYSoGLBmOPiQntC29j1sfFbTcIyqs","level":"info","message":"auth send jwt","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:47Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.486249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049647,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0N30.FiqIB30TKOK6p2AYSoGLBmOPiQntC29j1sfFbTcIyqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/websocket 200 20ms","method":"POST","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1","responseTime":20,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c3c9a7e2c54e9b9f1dec8c1300ca03e1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7d975f6b584ec0a5b60046b5ffe90178","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7d975f6b584ec0a5b60046b5ffe90178","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/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":"7d975f6b584ec0a5b60046b5ffe90178"} device-1 | {"level":"info","message":"OPTIONS /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/websocket 200 1ms","method":"OPTIONS","requestID":"7d975f6b584ec0a5b60046b5ffe90178","responseTime":1,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ","level":"info","message":"auth send jwt","requestID":"332c194226b9e8da5ce795c89629873a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"332c194226b9e8da5ce795c89629873a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"332c194226b9e8da5ce795c89629873a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302794,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"332c194226b9e8da5ce795c89629873a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"332c194226b9e8da5ce795c89629873a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"332c194226b9e8da5ce795c89629873a"} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/websocket 200 21ms","method":"POST","requestID":"332c194226b9e8da5ce795c89629873a","responseTime":21,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"332c194226b9e8da5ce795c89629873a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"20903541709d29efb01ad4b856e60680","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"20903541709d29efb01ad4b856e60680","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"20903541709d29efb01ad4b856e60680"} device-1 | {"level":"info","message":"OPTIONS /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 1ms","method":"OPTIONS","requestID":"20903541709d29efb01ad4b856e60680","responseTime":1,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ","level":"info","message":"auth send jwt","requestID":"426dad24a71bfb9909b5f3e51329599f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"426dad24a71bfb9909b5f3e51329599f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"426dad24a71bfb9909b5f3e51329599f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304471,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"426dad24a71bfb9909b5f3e51329599f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"426dad24a71bfb9909b5f3e51329599f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"db98044a-ffd9-4fdd-824d-c3ea486bcc0d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049648.8712652} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"426dad24a71bfb9909b5f3e51329599f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc93d072-d4d4-4140-afa6-d785e5bdcdc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049648.8784926} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"426dad24a71bfb9909b5f3e51329599f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"abe2501d-5147-4246-b5d9-74a54e93553c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049648.8915112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"426dad24a71bfb9909b5f3e51329599f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"426dad24a71bfb9909b5f3e51329599f"} device-1 | {"level":"info","message":"PATCH /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 37ms","method":"PATCH","requestID":"426dad24a71bfb9909b5f3e51329599f","responseTime":37,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"426dad24a71bfb9909b5f3e51329599f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ","level":"info","message":"auth send jwt","requestID":"ad51b742d262ac8e7b8152f5549ba30f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ad51b742d262ac8e7b8152f5549ba30f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad51b742d262ac8e7b8152f5549ba30f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.18199,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ad51b742d262ac8e7b8152f5549ba30f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad51b742d262ac8e7b8152f5549ba30f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"d903b4d3-66dd-4492-a17e-fa5dda241ecd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049648.9209878} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad51b742d262ac8e7b8152f5549ba30f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad51b742d262ac8e7b8152f5549ba30f"} device-1 | {"level":"info","message":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? 200 16ms","method":"GET","requestID":"ad51b742d262ac8e7b8152f5549ba30f","responseTime":16,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad51b742d262ac8e7b8152f5549ba30f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ","level":"info","message":"auth send jwt","requestID":"1d29caddc91dede105dd409d0773eb26"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1d29caddc91dede105dd409d0773eb26","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d29caddc91dede105dd409d0773eb26"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159337,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1d29caddc91dede105dd409d0773eb26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d29caddc91dede105dd409d0773eb26","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"afd76fdd-1aed-47e4-b4d8-ab9fd705a276","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049648.9446964} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1d29caddc91dede105dd409d0773eb26","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d29caddc91dede105dd409d0773eb26"} gateway-1 | {"time_local":"23/Sep/2024:00:00:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d29caddc91dede105dd409d0773eb26"} device-1 | {"level":"info","message":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 16ms","method":"GET","requestID":"1d29caddc91dede105dd409d0773eb26","responseTime":16,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ","level":"info","message":"auth send jwt","requestID":"09f9c5cc018c812c4efce67b214577e3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"09f9c5cc018c812c4efce67b214577e3","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"09f9c5cc018c812c4efce67b214577e3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.243105,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09f9c5cc018c812c4efce67b214577e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"09f9c5cc018c812c4efce67b214577e3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to run experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to book experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully booked experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3e343b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3e391d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.144349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3e343b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e3e343b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.069761,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3e391d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e3e391d0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"97fd752e-7138-41ac-aa6b-348e7c8ff537","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.0196252} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e3e343b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"d16dd01f-ff8e-40ed-be30-2e3d8e186b30","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.0251415} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3e391d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3e343b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? 200 24ms","method":"GET","requestID":"e3e343b0-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3e391d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 25ms","method":"GET","requestID":"e3e391d0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Setting up experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully locked booking for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to update booking for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully updated booking for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully set up experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3ee1920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3ee6740-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3ee8e50-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully running experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3ee1920-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3ee1920-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.204011,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3ee6740-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3ee6740-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58144","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"08e30310-0f73-4b52-a2d3-28266329470c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.0873322} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3ee6740-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"87fbc17c-fab4-427d-8858-219f1c738538","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.0893478} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b3f7efd-4732-4fef-9bd6-fbf9144c7262","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.0897958} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3ee1920-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58144","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.253269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3ee8e50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"e3ee8e50-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb375f67-89c9-4af7-90ff-23c853e23c44#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb375f67-89c9-4af7-90ff-23c853e23c44","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b01df0ca-538d-48fe-8dbb-db7dccf272d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1006927} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44425016-1c4c-4f7c-8c03-0012c6c9c4a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1010332} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3ee6740-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"09f9c5cc018c812c4efce67b214577e3","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 28ms","method":"GET","requestID":"e3ee6740-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3ee1920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? 200 32ms","method":"GET","requestID":"e3ee1920-793e-11ef-9733-5750b05365a5","responseTime":32,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3ee8e50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling 200 31ms","method":"POST","requestID":"e3ee8e50-793e-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3f3be70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3f40c90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"09f9c5cc018c812c4efce67b214577e3","responseTime":157,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09f9c5cc018c812c4efce67b214577e3"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0be294b-6852-479a-9622-8bf7e847bed3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1179283} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.380662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3f3be70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"e3f3be70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb3bf86c-1cf2-47af-bad3-2e8a64ca92e7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1195254} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.277888,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3f40c90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","rebac_allow":false,"scope_allow":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":"e3f40c90-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OX0.MJpaXn6GKggUsksTmlolqvt3QAIFCq2yn7KN6XL6eR0","level":"info","message":"auth send jwt","requestID":"0d210646eb2b60341deccaec1630d086"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0d210646eb2b60341deccaec1630d086","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d210646eb2b60341deccaec1630d086"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3f3be70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling 200 16ms","method":"POST","requestID":"e3f3be70-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3f40c90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling 200 15ms","method":"POST","requestID":"e3f40c90-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.123507,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3f67d90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0d210646eb2b60341deccaec1630d086","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049649,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OX0.MJpaXn6GKggUsksTmlolqvt3QAIFCq2yn7KN6XL6eR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d210646eb2b60341deccaec1630d086","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"4dcc2f00-7ed5-4a36-ad06-e455043c86de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1347666} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8497de4b-e125-4d73-81cd-625cfde63eb3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1348972} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d210646eb2b60341deccaec1630d086","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.097536,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3f67d90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3f67d90-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d210646eb2b60341deccaec1630d086"} gateway-1 | {"time_local":"23/Sep/2024:00:00:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d210646eb2b60341deccaec1630d086"} device-1 | {"level":"info","message":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? 200 14ms","method":"GET","requestID":"0d210646eb2b60341deccaec1630d086","responseTime":14,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3f67d90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling 200 11ms","method":"POST","requestID":"e3f67d90-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3f87960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3f8a070-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OX0.MJpaXn6GKggUsksTmlolqvt3QAIFCq2yn7KN6XL6eR0","level":"info","message":"auth send jwt","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3f87960-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e3f87960-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.56779,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58144","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3f8a070-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e3f8a070-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58144","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805787,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7c6bb60d73a21aba4aebc6592b1c9e35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049649,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OX0.MJpaXn6GKggUsksTmlolqvt3QAIFCq2yn7KN6XL6eR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.711695365Z"}]},"request_id":"5b914900-bb7d-4bf3-94b4-e7f256f47b2a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1506455} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3f87960-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"da427b66-d4e0-4026-bb69-5e46f69e93eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.152434} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3f8a070-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:46.753900063Z"}]},"request_id":"1f2a3d5d-18a4-4fd9-b082-3a123fa646de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1540868} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3f87960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b? 200 13ms","method":"GET","requestID":"e3f87960-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3f8a070-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 15ms","method":"GET","requestID":"e3f8a070-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35"} device-1 | {"level":"info","message":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? 200 15ms","method":"GET","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35","responseTime":15,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c6bb60d73a21aba4aebc6592b1c9e35"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Building connection plan","requestID":"09f9c5cc018c812c4efce67b214577e3"} 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":"afd360a3-0938-4b7d-aab1-b85d607ce057"},{"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":"95c4f68f-4062-4184-884c-2f1c261bc0ac"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7be52d45-301a-46a0-bd97-9c68200568ab"}]},"level":"info","message":"Built pairwise service configurations","requestID":"09f9c5cc018c812c4efce67b214577e3"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"09f9c5cc018c812c4efce67b214577e3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.888199,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049648,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY0OH0.jzJH5Brw5qudl6c8sVZWKN_WHKD6oY-wW131D7SL_YQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b50cfb3d-c1d6-4ad9-9388-ab3b6805cd4b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.17228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6646172d-f237-4e96-abfd-6e55a712e913","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.1725333} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98'","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98'","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"e3fb5f90-793e-11ef-9733-5750b05365a5","responseTime":22,"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":"e3fb5f90-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"09f9c5cc018c812c4efce67b214577e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4023d60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21d6dbff-3051-407a-974c-9c4859694498","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.2104378} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.474014,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e4023d60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4023d60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4023d60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling 200 8ms","method":"POST","requestID":"e4023d60-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4039cf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f424de58-c0be-411e-a045-697af1aee746","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049649.2194405} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.10777,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e4039cf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4039cf0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4039cf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling 200 8ms","method":"POST","requestID":"e4039cf0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling"} device-1 | {"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4965491132391741048 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:biaX\r\na=ice-pwd:UmspE2lGVj32tpxBLFeacSgA\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5A:4A:B4:61:E8:3D:55:27:B3:70:E5:04:D0:80:20:43:56:6B:25:EC:53:FB:E5:E0:4F:D3:4E:7C:ED:38:A6:B9\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1215900403 1 udp 2113937151 db3e76f3-3b37-41a8-8ede-5d4e427e06a6.local 36943 typ host generation 0 ufrag biaX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3679620064 1 udp 1677729535 141.24.211.56 36943 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag biaX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","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/81ed435b-47b5-493f-bb85-a405f79d2f98' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"666419749935710f5120f99b6420b42e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"666419749935710f5120f99b6420b42e","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"}}},"level":"info","message":"received a callback","requestID":"666419749935710f5120f99b6420b42e"} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"666419749935710f5120f99b6420b42e","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"666419749935710f5120f99b6420b42e"} device-1 | {"data":{"peerconnection":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","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/81ed435b-47b5-493f-bb85-a405f79d2f98' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"61885c309937ac85c3e5756f93446e18","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"61885c309937ac85c3e5756f93446e18","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"}}},"level":"info","message":"received a callback","requestID":"61885c309937ac85c3e5756f93446e18"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e541c240-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81ed435b-47b5-493f-bb85-a405f79d2f98","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5da487d2-e67e-4ef6-8e83-d3da71cb7842","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.3050115} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.532686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e541c240-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e541c240-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e541c240-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98 200 8ms","method":"GET","requestID":"e541c240-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"61885c309937ac85c3e5756f93446e18","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"61885c309937ac85c3e5756f93446e18"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5474080-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1c8d2e5-4865-4713-8051-ae7d82b23093","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.3416727} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.682896,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5474080-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","rebac_allow":false,"scope_allow":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":"e5474080-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5474080-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling 200 10ms","method":"POST","requestID":"e5474080-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5493c50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3604c651-9633-45c4-afe8-7f62f4876f9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.3551486} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.986389,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5493c50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"e5493c50-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5493c50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling 200 11ms","method":"POST","requestID":"e5493c50-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM","level":"info","message":"auth send jwt","requestID":"2fea5d9636187b7686729cccdf1c0688"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"2fea5d9636187b7686729cccdf1c0688","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","requestID":"2fea5d9636187b7686729cccdf1c0688"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.391196,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2fea5d9636187b7686729cccdf1c0688","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049651,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2fea5d9636187b7686729cccdf1c0688","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","requestID":"2fea5d9636187b7686729cccdf1c0688"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fea5d9636187b7686729cccdf1c0688"} experiment-1 | {"level":"info","message":"GET /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44 200 17ms","method":"GET","requestID":"2fea5d9636187b7686729cccdf1c0688","responseTime":17,"status":200,"url":"/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM","level":"info","message":"auth send jwt","requestID":"02b21827279b8c56071a95f77a4009e8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"02b21827279b8c56071a95f77a4009e8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","requestID":"02b21827279b8c56071a95f77a4009e8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.248794,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"02b21827279b8c56071a95f77a4009e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049651,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"02b21827279b8c56071a95f77a4009e8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Attempting to finish experiment","requestID":"02b21827279b8c56071a95f77a4009e8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e55682c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.559985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e55682c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049651,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e55682c0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98","device":"f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/81ed435b-47b5-493f-bb85-a405f79d2f98' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81ed435b-47b5-493f-bb85-a405f79d2f98","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81ed435b-47b5-493f-bb85-a405f79d2f98': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81ed435b-47b5-493f-bb85-a405f79d2f98","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"37e931e4-c856-434e-8466-de415be9df33","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.4616928} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c35f21d-a03f-41dd-a388-b8a6754e91de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.4621282} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c39536249e7b64e331e7cb56d6eae75f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 12ms","method":"POST","requestID":"e55682c0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c39536249e7b64e331e7cb56d6eae75f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e83b9ab90543433d4b613fa6aaeb32d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"}}},"level":"info","message":"received a callback","requestID":"c39536249e7b64e331e7cb56d6eae75f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5e83b9ab90543433d4b613fa6aaeb32d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"}}},"level":"info","message":"received a callback","requestID":"5e83b9ab90543433d4b613fa6aaeb32d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e55682c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98 204 49ms","method":"DELETE","requestID":"e55682c0-793e-11ef-9733-5750b05365a5","responseTime":49,"status":204,"url":"/peerconnections/81ed435b-47b5-493f-bb85-a405f79d2f98"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"},"level":"info","message":"Successfully finished experiment","requestID":"02b21827279b8c56071a95f77a4009e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5615830-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59b30cf-8bf4-41aa-b198-b80e28f2f9cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac0fe386-8302-405a-8e33-9d26226b048c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.5143652} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.798296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5615830-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf","object_type":"device","rebac_allow":false,"scope_allow":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":"e5615830-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5615830-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb375f67-89c9-4af7-90ff-23c853e23c44': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb375f67-89c9-4af7-90ff-23c853e23c44","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"df3b1077-e4b3-4524-af59-65a768151837","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.5208223} device-1 | {"level":"info","message":"POST /devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/signaling 200 13ms","method":"POST","requestID":"e5615830-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae4a3780-2166-40b2-816a-8c3224dfddb5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.521724} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"02b21827279b8c56071a95f77a4009e8","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5641750-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8f5fcf2-84ca-45fc-b631-ee081602004a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.531929} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.879558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5641750-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"e5641750-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5641750-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling 200 14ms","method":"POST","requestID":"e5641750-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44","requestID":"02b21827279b8c56071a95f77a4009e8"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"02b21827279b8c56071a95f77a4009e8"} experiment-1 | {"level":"info","message":"DELETE /experiments/fb375f67-89c9-4af7-90ff-23c853e23c44 204 171ms","method":"DELETE","requestID":"02b21827279b8c56071a95f77a4009e8","responseTime":171,"status":204,"url":"/experiments/fb375f67-89c9-4af7-90ff-23c853e23c44"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3271","request_time":"4.299","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"887f157cfef87264ebf182b0f7006433"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"c39536249e7b64e331e7cb56d6eae75f","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"c39536249e7b64e331e7cb56d6eae75f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"5e83b9ab90543433d4b613fa6aaeb32d","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e83b9ab90543433d4b613fa6aaeb32d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM","level":"info","message":"auth send jwt","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.790","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":"3761e39c34e8089fc11fe5136e560928"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.108515,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049651,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/929e813b-a2cd-4e69-ac2d-5f05bbc0ed9b' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fe622c00-6048-46ee-8cce-0caaf1743064","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6229491} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f59b30cf-8bf4-41aa-b198-b80e28f2f9cf' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fdcfe3da-6b30-4b93-94ed-66b789333ede","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6282349} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3076ddb4-f055-461e-b049-e38a5b5d3271","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.64291} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14ca456b-89e3-43e2-bbf7-650e37f1426e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6431146} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"fc06d9f5-382c-47ec-9bdf-53f5ad62d3d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6477013} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"a963703e1e1eca49f8e70a4e9a6e49d8","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM","level":"info","message":"auth send jwt","requestID":"692e184bc8000fdc8907a111f316734f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"692e184bc8000fdc8907a111f316734f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"692e184bc8000fdc8907a111f316734f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.747944,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"692e184bc8000fdc8907a111f316734f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049651,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1MX0.E2oQ1vlXws3MfMMGPo5CjuEKZWMrpt25l-PxKkdvBeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"29e750a7-0ddb-43f4-b2ee-b5c89eaad504","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6720278} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7097daee-3900-4114-9fdd-81a153c487ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6768904} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"647ca719-c188-44bc-b662-a02a5b88e7bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6883652} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a28f5751-aacd-4c5c-a3b2-9a9c8c415a8e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6884723} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"f417c26f-cf80-48ad-a67e-da84fa24eaf2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049651.6930535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"692e184bc8000fdc8907a111f316734f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"692e184bc8000fdc8907a111f316734f"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"692e184bc8000fdc8907a111f316734f","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"301ed05c1d8edffe03fd8791a6be6463"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"301ed05c1d8edffe03fd8791a6be6463","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"b103517619dee059b482d5069735b5c4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b103517619dee059b482d5069735b5c4","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"301ed05c1d8edffe03fd8791a6be6463"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b103517619dee059b482d5069735b5c4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846425,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"301ed05c1d8edffe03fd8791a6be6463","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"301ed05c1d8edffe03fd8791a6be6463","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b103517619dee059b482d5069735b5c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b103517619dee059b482d5069735b5c4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"6aa66162-32ad-43ef-b12b-f7415e1e1097","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.172126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"301ed05c1d8edffe03fd8791a6be6463","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"96e11077-a811-4d5d-891d-d4517877a3d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.1728716} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b103517619dee059b482d5069735b5c4","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de9b7f18-775d-4889-a1fc-1b2971d79b6b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.1770551} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"301ed05c1d8edffe03fd8791a6be6463","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"388f0cbc-03ef-468c-8eb6-20b1ace1d8dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.1800392} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b103517619dee059b482d5069735b5c4","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"1a290ca0-ce22-4ced-b2b9-03c5c2d9aa9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.1836202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b103517619dee059b482d5069735b5c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b103517619dee059b482d5069735b5c4"} device-1 | {"level":"info","message":"PATCH /devices/bd12fead-8d55-460e-82d3-f3199ee79944 200 24ms","method":"PATCH","requestID":"b103517619dee059b482d5069735b5c4","responseTime":24,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bd12fead-8d55-460e-82d3-f3199ee79944 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b103517619dee059b482d5069735b5c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"c293b35b8d448de0e8aea1e9846493c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c293b35b8d448de0e8aea1e9846493c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c293b35b8d448de0e8aea1e9846493c2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683715,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c293b35b8d448de0e8aea1e9846493c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c293b35b8d448de0e8aea1e9846493c2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"f094eefa-8c14-4635-8441-9d2b4c8d825a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.1960614} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"301ed05c1d8edffe03fd8791a6be6463","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"301ed05c1d8edffe03fd8791a6be6463"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"301ed05c1d8edffe03fd8791a6be6463"} device-1 | {"level":"info","message":"PATCH /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf 200 39ms","method":"PATCH","requestID":"301ed05c1d8edffe03fd8791a6be6463","responseTime":39,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"48eca33417357758d5edc8827c4c9002"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48eca33417357758d5edc8827c4c9002","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"48eca33417357758d5edc8827c4c9002"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.16117,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c293b35b8d448de0e8aea1e9846493c2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c293b35b8d448de0e8aea1e9846493c2"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"48eca33417357758d5edc8827c4c9002","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/websocket 200 18ms","method":"POST","requestID":"c293b35b8d448de0e8aea1e9846493c2","responseTime":18,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48eca33417357758d5edc8827c4c9002","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"48eca33417357758d5edc8827c4c9002"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"48eca33417357758d5edc8827c4c9002"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/websocket 200 16ms","method":"POST","requestID":"48eca33417357758d5edc8827c4c9002","responseTime":16,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d62a86bb83e7f07dea2d9f8f0d0888da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"2fa209ea-97cc-4978-8118-746308b9cd36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.2583604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da"} device-1 | {"level":"info","message":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? 200 15ms","method":"GET","requestID":"d62a86bb83e7f07dea2d9f8f0d0888da","responseTime":15,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"d9d684507eef39bcf58634e2efacc91c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9d684507eef39bcf58634e2efacc91c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9d684507eef39bcf58634e2efacc91c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d9d684507eef39bcf58634e2efacc91c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9d684507eef39bcf58634e2efacc91c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"eaee2b11-18b3-4d91-8e11-aa1135902f3f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.2823787} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9d684507eef39bcf58634e2efacc91c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9d684507eef39bcf58634e2efacc91c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9d684507eef39bcf58634e2efacc91c"} device-1 | {"level":"info","message":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? 200 16ms","method":"GET","requestID":"d9d684507eef39bcf58634e2efacc91c","responseTime":16,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"79fe1e45f08683d880a65e171c2535cb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"79fe1e45f08683d880a65e171c2535cb","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"79fe1e45f08683d880a65e171c2535cb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.208682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"79fe1e45f08683d880a65e171c2535cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79fe1e45f08683d880a65e171c2535cb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to run experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to book experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully booked experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5e07340-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5e09a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5e07340-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5e07340-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.599248,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5e09a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5e09a50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"742a0182-b963-4b4b-9bfc-c554afb9f22c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.351723} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e5e07340-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"0e243c94-ad2d-4cc0-adf1-403983dcd4ea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.3527017} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5e09a50-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5e07340-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? 200 19ms","method":"GET","requestID":"e5e07340-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5e09a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? 200 19ms","method":"GET","requestID":"e5e09a50-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Setting up experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully locked booking for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to update booking for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully updated booking for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully set up experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5ebbde0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully running experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107874,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"639d6664-b854-4171-8190-bc12edaaf9f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4205663} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.239407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5ebbde0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","rebac_allow":false,"scope_allow":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":"e5ebbde0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"b96ae04a-056b-4407-adae-41022556bd2d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4229486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"f95b6f90-d922-4ae8-99e6-356d3c7c249d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4239767} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5ebbde0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling 200 17ms","method":"POST","requestID":"e5ebbde0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? 200 23ms","method":"GET","requestID":"e5eb21a0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? 200 24ms","method":"GET","requestID":"e5eb48b0-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5eef230-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1e6a02b-b563-44de-af60-101dabc5c027#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1e6a02b-b563-44de-af60-101dabc5c027","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"e1d321ec-3dd1-4c4a-a9c7-37c900fe994b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4362688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e01aab35-49bf-4cb0-827e-2d70dbda1cf0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4367037} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5ef4050-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"79fe1e45f08683d880a65e171c2535cb","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8f6646d-e929-4453-aa80-5e6b3c8c5ef1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4411433} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.96384,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5eef230-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","rebac_allow":false,"scope_allow":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":"e5eef230-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15d13c33-6f46-423f-9405-28d12a1376f3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.443452} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.104505,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5ef4050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5ef4050-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"79fe1e45f08683d880a65e171c2535cb"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79fe1e45f08683d880a65e171c2535cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5eef230-793e-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"79fe1e45f08683d880a65e171c2535cb","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling 200 12ms","method":"POST","requestID":"e5eef230-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5ef4050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling 200 12ms","method":"POST","requestID":"e5ef4050-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5f16330-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738945,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.672113,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87f5dd93-7f9f-49d9-99b7-c8fa7c1cec45","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.456162} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5f16330-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","rebac_allow":false,"scope_allow":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":"e5f16330-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"89b7a869-3678-450d-9971-14b38303bd40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4628909} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5f16330-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling 200 13ms","method":"POST","requestID":"e5f16330-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5f3d430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3"} device-1 | {"level":"info","message":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? 200 17ms","method":"GET","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3","responseTime":17,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0bb18f90b0daa5ba6ea2dd143f02b4b3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.274579,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5f3d430-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5f3d430-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070031,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4","level":"info","message":"auth send jwt","requestID":"7e7c96bc2e212ea7754522d171e64d17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e7c96bc2e212ea7754522d171e64d17","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7e7c96bc2e212ea7754522d171e64d17"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.642886865Z"}]},"request_id":"79b105f5-2042-4643-bd30-47b795d1ea8f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4765081} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5f3d430-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"b81126ac-c9bf-4c66-98d5-07587b8e07e9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4771879} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5f3d430-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.030599,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} device-1 | {"level":"info","message":"GET /devices/bd12fead-8d55-460e-82d3-f3199ee79944? 200 13ms","method":"GET","requestID":"e5f3d430-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7e7c96bc2e212ea7754522d171e64d17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e7c96bc2e212ea7754522d171e64d17","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? 200 15ms","method":"GET","requestID":"e5f3fb40-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:51.688342230Z"}]},"request_id":"00874aa1-6e5b-42e9-aac7-def011fb622d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.4838283} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Building connection plan","requestID":"79fe1e45f08683d880a65e171c2535cb"} 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":"289cd474-2222-4c8b-8c53-9ae8d27911a1"},{"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":"04b63bfb-b124-489d-8fbf-99a0569441c3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"fc97bc39-c6ac-4c18-a85d-9af13c5b94e3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"79fe1e45f08683d880a65e171c2535cb"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"79fe1e45f08683d880a65e171c2535cb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7e7c96bc2e212ea7754522d171e64d17","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7e7c96bc2e212ea7754522d171e64d17"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} device-1 | {"level":"info","message":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? 200 12ms","method":"GET","requestID":"7e7c96bc2e212ea7754522d171e64d17","responseTime":12,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e7c96bc2e212ea7754522d171e64d17"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.903873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049652,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1Mn0.98PoDVXvS49rJT_9xG7YtdzqlkWN1enfoLTWbm4mDP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"43df7cec-78ec-4885-b9b3-3514f6545580","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.497087} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0abac49-ef65-481c-b53a-516086406a90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.497408} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f'","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f'","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"e5f6ba60-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"e5f6ba60-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"79fe1e45f08683d880a65e171c2535cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5fed0b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ceeceac6-a7b1-4ce7-92c7-d436451345e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.5440156} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.932662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5fed0b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5fed0b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5fed0b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling 200 9ms","method":"POST","requestID":"e5fed0b0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6007e60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07705809-0e92-4d53-b611-97864be3258d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049652.5547245} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.591244,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e6007e60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e6007e60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6007e60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling 200 8ms","method":"POST","requestID":"e6007e60-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling"} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/8b8baa99-8fd8-44aa-8554-236877c1ef7f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f03617271f50391b491b3dbd44b28846","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f03617271f50391b491b3dbd44b28846","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"}}},"level":"info","message":"received a callback","requestID":"f03617271f50391b491b3dbd44b28846"} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"f03617271f50391b491b3dbd44b28846","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"f03617271f50391b491b3dbd44b28846"} device-1 | {"data":{"peerconnection":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","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/8b8baa99-8fd8-44aa-8554-236877c1ef7f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92ac43c667c2c8f2fffc10863ffa75f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"92ac43c667c2c8f2fffc10863ffa75f7","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"}}},"level":"info","message":"received a callback","requestID":"92ac43c667c2c8f2fffc10863ffa75f7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e73ca7e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8b8baa99-8fd8-44aa-8554-236877c1ef7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ef4fc6f-c61c-4ee6-874b-2f90546054d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.629398} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.057977,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e73ca7e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f","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":"e73ca7e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e73ca7e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f 200 13ms","method":"GET","requestID":"e73ca7e0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"92ac43c667c2c8f2fffc10863ffa75f7","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"92ac43c667c2c8f2fffc10863ffa75f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e742e970-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64b71816-1348-4bba-8d91-2ebc87e9fd04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.6693964} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.589942,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e742e970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","rebac_allow":false,"scope_allow":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":"e742e970-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e742e970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling 200 13ms","method":"POST","requestID":"e742e970-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7455a70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b13ad90-7aee-4479-9b73-7c9a39d360e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.6855085} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.740973,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7455a70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","rebac_allow":false,"scope_allow":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":"e7455a70-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7455a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling 200 13ms","method":"POST","requestID":"e7455a70-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY","level":"info","message":"auth send jwt","requestID":"4a9c88298a0078bbc30f57c19a6354e6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4a9c88298a0078bbc30f57c19a6354e6","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d1e6a02b-b563-44de-af60-101dabc5c027","requestID":"4a9c88298a0078bbc30f57c19a6354e6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.330001,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4a9c88298a0078bbc30f57c19a6354e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049654,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a9c88298a0078bbc30f57c19a6354e6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d1e6a02b-b563-44de-af60-101dabc5c027","requestID":"4a9c88298a0078bbc30f57c19a6354e6"} experiment-1 | {"level":"info","message":"GET /experiments/d1e6a02b-b563-44de-af60-101dabc5c027 200 15ms","method":"GET","requestID":"4a9c88298a0078bbc30f57c19a6354e6","responseTime":15,"status":200,"url":"/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d1e6a02b-b563-44de-af60-101dabc5c027 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a9c88298a0078bbc30f57c19a6354e6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY","level":"info","message":"auth send jwt","requestID":"a4427cc4be80d91147157f252dc51bad"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a4427cc4be80d91147157f252dc51bad","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d1e6a02b-b563-44de-af60-101dabc5c027","requestID":"a4427cc4be80d91147157f252dc51bad"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.325067,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a4427cc4be80d91147157f252dc51bad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049654,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4427cc4be80d91147157f252dc51bad","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Attempting to finish experiment","requestID":"a4427cc4be80d91147157f252dc51bad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e7502fe0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.175985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7502fe0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049654,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7502fe0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd12fead-8d55-460e-82d3-f3199ee79944","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/8b8baa99-8fd8-44aa-8554-236877c1ef7f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8b8baa99-8fd8-44aa-8554-236877c1ef7f","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8b8baa99-8fd8-44aa-8554-236877c1ef7f': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8b8baa99-8fd8-44aa-8554-236877c1ef7f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"9ef01433-5fd3-47a7-bb48-1e0347a0c8d3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.7744234} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8886bfed-c832-4afd-97a8-4ea0ade03285","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.77495} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e7502fe0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dbfb666073b3d523d977a00c0046e03d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"dbfb666073b3d523d977a00c0046e03d","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ecee148e13e7ef45e61fa913c661e101","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"}}},"level":"info","message":"received a callback","requestID":"dbfb666073b3d523d977a00c0046e03d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ecee148e13e7ef45e61fa913c661e101","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"}}},"level":"info","message":"received a callback","requestID":"ecee148e13e7ef45e61fa913c661e101"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e7502fe0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f 204 49ms","method":"DELETE","requestID":"e7502fe0-793e-11ef-9733-5750b05365a5","responseTime":49,"status":204,"url":"/peerconnections/8b8baa99-8fd8-44aa-8554-236877c1ef7f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"},"level":"info","message":"Successfully finished experiment","requestID":"a4427cc4be80d91147157f252dc51bad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e75b0550-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd12fead-8d55-460e-82d3-f3199ee79944","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7b6857a-ae87-46cc-8baa-3667459b8d72","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.8306546} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.365934,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e75b0550-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944","object_type":"device","rebac_allow":false,"scope_allow":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":"e75b0550-793e-11ef-9733-5750b05365a5","responseTime":11,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"537baad0-bdfd-4b83-8697-5c212d656d47","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.8393006} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1e6a02b-b563-44de-af60-101dabc5c027': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1e6a02b-b563-44de-af60-101dabc5c027","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3aefd723-8852-4eca-8bdd-71156e25967b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.840444} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e75b0550-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling 200 21ms","method":"POST","requestID":"e75b0550-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/bd12fead-8d55-460e-82d3-f3199ee79944/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"a4427cc4be80d91147157f252dc51bad","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e75eaed0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58559be6-f298-4b1f-a950-19e8db566424","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.8543472} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.894217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e75eaed0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf","object_type":"device","rebac_allow":false,"scope_allow":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":"e75eaed0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e75eaed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling 200 28ms","method":"POST","requestID":"e75eaed0-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d1e6a02b-b563-44de-af60-101dabc5c027","requestID":"a4427cc4be80d91147157f252dc51bad"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d1e6a02b-b563-44de-af60-101dabc5c027 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4427cc4be80d91147157f252dc51bad"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.698","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6ce42f8a215f24d1bbe2525ea251af2b"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.688","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fe29618b215296e3ccd3122c3256ae73"} experiment-1 | {"level":"info","message":"DELETE /experiments/d1e6a02b-b563-44de-af60-101dabc5c027 204 177ms","method":"DELETE","requestID":"a4427cc4be80d91147157f252dc51bad","responseTime":177,"status":204,"url":"/experiments/d1e6a02b-b563-44de-af60-101dabc5c027"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"dbfb666073b3d523d977a00c0046e03d","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"dbfb666073b3d523d977a00c0046e03d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"ecee148e13e7ef45e61fa913c661e101","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"ecee148e13e7ef45e61fa913c661e101"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY","level":"info","message":"auth send jwt","requestID":"4c731d9ef9511acbe2a5cc747865ea30"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/60d1fb9c-f66b-4f6b-9da0-2cac366f1baf' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"4c731d9ef9511acbe2a5cc747865ea30"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.868428,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4c731d9ef9511acbe2a5cc747865ea30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049654,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bd12fead-8d55-460e-82d3-f3199ee79944' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"67cc9d33-52e4-427f-a68d-781ca3adc944","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.946069} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3093a7a8-f469-4617-aec5-b2b5a6420eda","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.951853} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"d4c65ceb-0e09-4d78-8866-a24236bb22b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.962605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e660e961-4e91-41f7-9c9f-fde16924a337","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.9627168} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"3ed792e4-d2f7-4c42-bc09-efcf2300e7a8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.967448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4c731d9ef9511acbe2a5cc747865ea30"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"4c731d9ef9511acbe2a5cc747865ea30","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c731d9ef9511acbe2a5cc747865ea30"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY","level":"info","message":"auth send jwt","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.931961,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049654,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NH0.I8ZEa41dxSmq26JxaXUS10W_tAqmViL4EWmGSlaueNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ecc46b8-ab95-4f35-860f-e7320c93eacb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.9910467} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21f2c7a7-286e-4c30-975f-d242531babc2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049654.9956079} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ed9c3fec-8c51-441d-ad90-af6825f06f3b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.0103235} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b47a2455-e47b-4a24-a1cd-ef4a43674680","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.0105667} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"34bea6ea-79a3-4b3e-b604-2dba35a4fff8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.0156074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"5a8a136df8b85ac7db48beabd6a7ec2a","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"e555553ade8ae9281653d371ad000ef9"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e555553ade8ae9281653d371ad000ef9","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"d423f398af2592beeca1a871ce7d5bf6"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e555553ade8ae9281653d371ad000ef9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d423f398af2592beeca1a871ce7d5bf6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d423f398af2592beeca1a871ce7d5bf6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746155,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e555553ade8ae9281653d371ad000ef9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e555553ade8ae9281653d371ad000ef9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685542,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d423f398af2592beeca1a871ce7d5bf6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d423f398af2592beeca1a871ce7d5bf6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"b96b0be6-a867-47e4-8f84-8a32633532bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.4915445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e555553ade8ae9281653d371ad000ef9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"86752d0a-0701-4c10-ac97-088012b95dae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.4923441} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d423f398af2592beeca1a871ce7d5bf6","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c759ac69-8283-4cea-910f-fc1a9abdad1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.496536} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e555553ade8ae9281653d371ad000ef9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ecb2fda-3e89-4c11-91e6-bd4b8995d91e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.498999} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d423f398af2592beeca1a871ce7d5bf6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"c27a2cbb-4f1b-4b6b-8977-a0fabe4b3843","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.5023053} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d423f398af2592beeca1a871ce7d5bf6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d423f398af2592beeca1a871ce7d5bf6"} device-1 | {"level":"info","message":"PATCH /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c 200 21ms","method":"PATCH","requestID":"d423f398af2592beeca1a871ce7d5bf6","responseTime":21,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d423f398af2592beeca1a871ce7d5bf6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"bb4e88470ed721f30887682e127e1150"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bb4e88470ed721f30887682e127e1150","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bb4e88470ed721f30887682e127e1150"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"3b15e54f-5735-4fef-8f6d-8a97b6be6181","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.5121596} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e555553ade8ae9281653d371ad000ef9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e555553ade8ae9281653d371ad000ef9"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bb4e88470ed721f30887682e127e1150","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb4e88470ed721f30887682e127e1150","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5bb467f4-cee9-4512-9f72-5432d03efe25 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e555553ade8ae9281653d371ad000ef9"} device-1 | {"level":"info","message":"PATCH /devices/5bb467f4-cee9-4512-9f72-5432d03efe25 200 33ms","method":"PATCH","requestID":"e555553ade8ae9281653d371ad000ef9","responseTime":33,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"fb22df3f4696dcb92b9ef3eae996eca3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fb22df3f4696dcb92b9ef3eae996eca3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fb22df3f4696dcb92b9ef3eae996eca3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fb22df3f4696dcb92b9ef3eae996eca3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fb22df3f4696dcb92b9ef3eae996eca3","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bb4e88470ed721f30887682e127e1150"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bb4e88470ed721f30887682e127e1150"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/websocket 200 18ms","method":"POST","requestID":"bb4e88470ed721f30887682e127e1150","responseTime":18,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fb22df3f4696dcb92b9ef3eae996eca3"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fb22df3f4696dcb92b9ef3eae996eca3"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/websocket 200 16ms","method":"POST","requestID":"fb22df3f4696dcb92b9ef3eae996eca3","responseTime":16,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664781,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"d948ab3f-c982-4bba-8f24-fdb7633d15a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.5711179} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1"} device-1 | {"level":"info","message":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? 200 12ms","method":"GET","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1","responseTime":12,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1bbf2c25d2c9093b3657ac12c31eb8f1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"812e8c32af6c912d1b3961ec28c951db"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"812e8c32af6c912d1b3961ec28c951db","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"812e8c32af6c912d1b3961ec28c951db"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803648,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"812e8c32af6c912d1b3961ec28c951db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"812e8c32af6c912d1b3961ec28c951db","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"1d69be20-2581-4242-9225-fc4e9dd0da07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.586347} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"812e8c32af6c912d1b3961ec28c951db","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"812e8c32af6c912d1b3961ec28c951db"} device-1 | {"level":"info","message":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? 200 11ms","method":"GET","requestID":"812e8c32af6c912d1b3961ec28c951db","responseTime":11,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"812e8c32af6c912d1b3961ec28c951db"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7db0cf06b8176bab9fadf1f8602fed7a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.612049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7db0cf06b8176bab9fadf1f8602fed7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7db0cf06b8176bab9fadf1f8602fed7a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to run experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to book experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully booked experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7d71320-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7d73a30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7d71320-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7d71320-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624691,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7d73a30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7d73a30-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"da16be06-f1d6-4864-a241-d9ab31169184","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.6410694} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e7d71320-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"5c2a9661-2633-40a4-a74b-4c231d221302","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.6416059} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e7d73a30-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7d71320-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? 200 11ms","method":"GET","requestID":"e7d71320-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7d73a30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? 200 11ms","method":"GET","requestID":"e7d73a30-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Setting up experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully set up experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7df2970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7df5080-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7df7790-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718991,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully running experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7df2970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7df2970-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736663,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7df5080-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7df5080-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55676","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"50f9888b-054c-40f8-9b97-6447ca6b9003","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.698487} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26a56bec-7447-4088-9d22-113a5908fe31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.6992998} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7df5080-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"6cdf2fab-a9ae-477c-b393-35309f501160","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.6999657} authorization-1 | {"client_addr":"127.0.0.1:55676","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.568546,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7df7790-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","rebac_allow":false,"scope_allow":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":"e7df7790-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7df2970-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7df5080-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? 200 17ms","method":"GET","requestID":"e7df5080-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7df7790-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling 200 17ms","method":"POST","requestID":"e7df7790-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7df2970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? 200 19ms","method":"GET","requestID":"e7df2970-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7e25dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7e284d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F34e359a8-bafb-4180-8901-442b7b7c8b6a#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F34e359a8-bafb-4180-8901-442b7b7c8b6a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"327047c8-a60b-4959-8c2a-24e6deea80d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.710657} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e9fad62-6fcc-4169-b2ea-1ee9a02df16d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7109306} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"7db0cf06b8176bab9fadf1f8602fed7a","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.973639,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53b0ce97-b1ec-474c-bbc8-0bb8eb6047e9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7135267} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7e25dc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","rebac_allow":false,"scope_allow":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":"e7e25dc0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8d3934c-4da0-4898-9372-7e8ccc6b83c3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7154005} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7e284d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7e284d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7e25dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling 200 11ms","method":"POST","requestID":"e7e25dc0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"7db0cf06b8176bab9fadf1f8602fed7a","responseTime":125,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7e284d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling 200 12ms","method":"POST","requestID":"e7e284d0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7e4cec0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"64fa03386849f9712647db1278c45a96"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"64fa03386849f9712647db1278c45a96","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64fa03386849f9712647db1278c45a96"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39a55356-3516-4c96-bece-4175743a6d03","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7290716} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693244,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"64fa03386849f9712647db1278c45a96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"64fa03386849f9712647db1278c45a96","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.939989,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7e4cec0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","rebac_allow":false,"scope_allow":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":"e7e4cec0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"3498620d-1fef-4afc-ad20-eca58064726d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.732943} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7e4cec0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling 200 9ms","method":"POST","requestID":"e7e4cec0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"64fa03386849f9712647db1278c45a96","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e6a380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64fa03386849f9712647db1278c45a96"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64fa03386849f9712647db1278c45a96"} device-1 | {"level":"info","message":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? 200 12ms","method":"GET","requestID":"64fa03386849f9712647db1278c45a96","responseTime":12,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307097,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7e6a380-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7e6a380-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58136","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.837419,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo","level":"info","message":"auth send jwt","requestID":"f7036db4ccc6605dc392afbcd007202f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f7036db4ccc6605dc392afbcd007202f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7036db4ccc6605dc392afbcd007202f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:54.962572220Z"}]},"request_id":"2d151307-c28c-4474-9f71-c42bb8c74d42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7454188} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e7e6a380-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"76198ae5-b45c-4963-a4ff-633a4ba75694","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7468626} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7036db4ccc6605dc392afbcd007202f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7036db4ccc6605dc392afbcd007202f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e6a380-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c? 200 19ms","method":"GET","requestID":"e7e6a380-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:55.010282442Z"}]},"request_id":"518722c4-e158-4f4c-8b87-8e34466de74b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.755393} device-1 | {"level":"info","message":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? 200 19ms","method":"GET","requestID":"e7e6ca90-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7036db4ccc6605dc392afbcd007202f","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Building connection plan","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} 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":"243690c2-2e8e-4f52-a9a7-7f24068adf1d"},{"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":"72c5a007-2aae-4936-bc9e-641dc202aa59"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3db8bad5-5e7d-45e5-92e8-de8217d150c2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7036db4ccc6605dc392afbcd007202f"} gateway-1 | {"time_local":"23/Sep/2024:00:00:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7036db4ccc6605dc392afbcd007202f"} device-1 | {"level":"info","message":"GET /devices/5bb467f4-cee9-4512-9f72-5432d03efe25? 200 17ms","method":"GET","requestID":"f7036db4ccc6605dc392afbcd007202f","responseTime":17,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.924146,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049655,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1NX0.NOPOvCtE1cSJWVI0ZIY4JikX5QSig_ahtT_mUjiMvVo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c31e436a-fc8b-428a-ae30-76c825b1dfe1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7728577} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c06a021-fc62-4649-8c19-2d93f83ce261","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.7731476} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8'","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8'","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e7ea25f0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7db0cf06b8176bab9fadf1f8602fed7a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f2d880-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec0ad1aa-751f-4320-9f86-e6bb4ef7f11d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.8212104} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.609747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7f2d880-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7f2d880-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f2d880-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling 200 9ms","method":"POST","requestID":"e7f2d880-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f4ad40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"139b2832-3e86-41ca-966c-bb689cc5d10c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049655.832207} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.566942,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e7f4ad40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7f4ad40-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f4ad40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling 200 8ms","method":"POST","requestID":"e7f4ad40-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling"} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89f4d222e89af32f066133447f697ac4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"89f4d222e89af32f066133447f697ac4","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"}}},"level":"info","message":"received a callback","requestID":"89f4d222e89af32f066133447f697ac4"} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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 9ms","method":"POST","requestID":"89f4d222e89af32f066133447f697ac4","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"89f4d222e89af32f066133447f697ac4"} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","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/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce733261036174916877e5aad6036134","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ce733261036174916877e5aad6036134","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"}}},"level":"info","message":"received a callback","requestID":"ce733261036174916877e5aad6036134"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e9317300-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fde1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2312f238-cb48-44d2-853c-4a8d368fd5eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049657.9103475} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.454659,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e9317300-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","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":"e9317300-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e9317300-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8 200 12ms","method":"GET","requestID":"e9317300-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"ce733261036174916877e5aad6036134","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00: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.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"ce733261036174916877e5aad6036134"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9376670-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77339c85-2c1c-491a-9866-ba6b9095dab6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049657.9498014} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.110459,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e9376670-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","rebac_allow":false,"scope_allow":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":"e9376670-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9376670-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling 200 12ms","method":"POST","requestID":"e9376670-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e939d770-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f57645cc-c817-4800-aa98-d13526aa1d16","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049657.9658344} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.565941,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e939d770-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","rebac_allow":false,"scope_allow":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":"e939d770-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e939d770-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling 200 13ms","method":"POST","requestID":"e939d770-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1N30.vLRAzxN6Sk5GIQZXtPioHegUHuEW6ay6fGBDWOu1DpM","level":"info","message":"auth send jwt","requestID":"12777609514cb01beefe963092de6c6d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12777609514cb01beefe963092de6c6d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","requestID":"12777609514cb01beefe963092de6c6d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.693889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12777609514cb01beefe963092de6c6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049657,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1N30.vLRAzxN6Sk5GIQZXtPioHegUHuEW6ay6fGBDWOu1DpM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"12777609514cb01beefe963092de6c6d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","requestID":"12777609514cb01beefe963092de6c6d"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12777609514cb01beefe963092de6c6d"} experiment-1 | {"level":"info","message":"GET /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a 200 13ms","method":"GET","requestID":"12777609514cb01beefe963092de6c6d","responseTime":13,"status":200,"url":"/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g","level":"info","message":"auth send jwt","requestID":"6e282f38419c2d38a822352f32428eb7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6e282f38419c2d38a822352f32428eb7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","requestID":"6e282f38419c2d38a822352f32428eb7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.125132,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6e282f38419c2d38a822352f32428eb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049658,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e282f38419c2d38a822352f32428eb7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Attempting to finish experiment","requestID":"6e282f38419c2d38a822352f32428eb7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e9459740-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.719721,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e9459740-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049658,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9459740-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"59934c4a-a09e-4a4c-b80c-d748a390ab6c","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"5bb467f4-cee9-4512-9f72-5432d03efe25","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fde1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fde1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0fbe2e7d-9659-46b2-a6d8-5ba6599502b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.0666273} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"776650cf0ca9a9363c8b933fe4f61d6b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc6d8e5c-d0d9-4c34-b4c5-ed2391971919","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.066935} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"776650cf0ca9a9363c8b933fe4f61d6b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e9459740-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e3148d15baf8a8517c278e5a07fbb0d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"}}},"level":"info","message":"received a callback","requestID":"776650cf0ca9a9363c8b933fe4f61d6b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e3148d15baf8a8517c278e5a07fbb0d5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"}}},"level":"info","message":"received a callback","requestID":"e3148d15baf8a8517c278e5a07fbb0d5"} device-1 | {"data":{"peerconnection":"de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e9459740-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8 204 54ms","method":"DELETE","requestID":"e9459740-793e-11ef-9733-5750b05365a5","responseTime":54,"status":204,"url":"/peerconnections/de1b3ac5-87dd-45ab-aedc-fb3a1a0c8fc8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"},"level":"info","message":"Successfully finished experiment","requestID":"6e282f38419c2d38a822352f32428eb7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9513000-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb467f4-cee9-4512-9f72-5432d03efe25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"219383fd-67ae-4fa4-b8c4-47d396230cf5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.1189165} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.943469,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e9513000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb467f4-cee9-4512-9f72-5432d03efe25","object_type":"device","rebac_allow":false,"scope_allow":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":"e9513000-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9513000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling 200 13ms","method":"POST","requestID":"e9513000-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/5bb467f4-cee9-4512-9f72-5432d03efe25/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F34e359a8-bafb-4180-8901-442b7b7c8b6a': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F34e359a8-bafb-4180-8901-442b7b7c8b6a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"cb167465-b80e-453e-8807-41c7a4c6ba29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.12632} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f403c1f9-0777-4126-8581-487170ae11bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.126848} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e953a100-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6e282f38419c2d38a822352f32428eb7","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59934c4a-a09e-4a4c-b80c-d748a390ab6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d1b6b51-6e41-43c4-a875-3d4317d64759","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.1330452} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.118742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e953a100-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c","object_type":"device","rebac_allow":false,"scope_allow":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":"e953a100-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e953a100-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling 200 10ms","method":"POST","requestID":"e953a100-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a","requestID":"6e282f38419c2d38a822352f32428eb7"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e282f38419c2d38a822352f32428eb7"} experiment-1 | {"level":"info","message":"DELETE /experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a 204 173ms","method":"DELETE","requestID":"6e282f38419c2d38a822352f32428eb7","responseTime":173,"status":204,"url":"/experiments/34e359a8-bafb-4180-8901-442b7b7c8b6a"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.653","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ac3487e78a425676ca0187b72ad5eca3"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.663","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1f972e75a3570f35479717f8155bbb56"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"776650cf0ca9a9363c8b933fe4f61d6b","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"776650cf0ca9a9363c8b933fe4f61d6b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"e3148d15baf8a8517c278e5a07fbb0d5","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"e3148d15baf8a8517c278e5a07fbb0d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g","level":"info","message":"auth send jwt","requestID":"af454aa9803af32a0aee0b363938f1d5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af454aa9803af32a0aee0b363938f1d5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"af454aa9803af32a0aee0b363938f1d5"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/59934c4a-a09e-4a4c-b80c-d748a390ab6c' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.276089,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"af454aa9803af32a0aee0b363938f1d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049658,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","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/5bb467f4-cee9-4512-9f72-5432d03efe25' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"139170c6-73bb-410d-af5f-57d8a072953c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2259638} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a79fc88e-8744-4461-964a-3d04facbfcc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2321746} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f5241042-d042-469d-b005-c660330600de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.243254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7a7b924-961d-4202-be43-559d20fa47b6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2435071} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"95587ba2-e004-469f-ac1f-e308bc90ef4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.248262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"af454aa9803af32a0aee0b363938f1d5"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af454aa9803af32a0aee0b363938f1d5"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"af454aa9803af32a0aee0b363938f1d5","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g","level":"info","message":"auth send jwt","requestID":"4eab1ff6a17e7f034653099197606cf2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4eab1ff6a17e7f034653099197606cf2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4eab1ff6a17e7f034653099197606cf2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.727485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:00:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4eab1ff6a17e7f034653099197606cf2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049658,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY1OH0.iQ6YINgZsG0HSWXgrd7A87bZHJg-KuQIJcYNWDq7c7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"22516031-c77e-426c-a15c-63180185fd9d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.276489} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de576f5d-3961-4452-b550-ebc658828ceb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2811427} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"482e2c28-6ae9-4695-8c2c-f947b84bdd7c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2912672} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4aba60d2-78e4-4284-8377-7e9b9268e72a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.291464} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"8d493f4d-1546-4eb1-bbea-96363100a3a5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049658.2957878} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4eab1ff6a17e7f034653099197606cf2"} gateway-1 | {"time_local":"23/Sep/2024:00:00:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4eab1ff6a17e7f034653099197606cf2"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4eab1ff6a17e7f034653099197606cf2","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2efb27df0bcf6fb4cc0c5f2db9a4971f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2efb27df0bcf6fb4cc0c5f2db9a4971f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/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":"2efb27df0bcf6fb4cc0c5f2db9a4971f"} device-1 | {"level":"info","message":"OPTIONS /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/websocket 200 1ms","method":"OPTIONS","requestID":"2efb27df0bcf6fb4cc0c5f2db9a4971f","responseTime":1,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"4d72bdaefb067fb56619ea2d267ebe0c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d72bdaefb067fb56619ea2d267ebe0c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4d72bdaefb067fb56619ea2d267ebe0c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.473486,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d72bdaefb067fb56619ea2d267ebe0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4d72bdaefb067fb56619ea2d267ebe0c","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb10ecd2164d807341e6e91c0607efbc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fb10ecd2164d807341e6e91c0607efbc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/2ea95df9-b85a-478b-8139-dade4d03995f/websocket 200 1ms","method":"OPTIONS","requestID":"fb10ecd2164d807341e6e91c0607efbc","responseTime":1,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2ea95df9-b85a-478b-8139-dade4d03995f/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":"fb10ecd2164d807341e6e91c0607efbc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4d72bdaefb067fb56619ea2d267ebe0c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d72bdaefb067fb56619ea2d267ebe0c"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/websocket 200 21ms","method":"POST","requestID":"4d72bdaefb067fb56619ea2d267ebe0c","responseTime":21,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"5b335b493e42a66a917f2590658c02df"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b335b493e42a66a917f2590658c02df","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5b335b493e42a66a917f2590658c02df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917243,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5b335b493e42a66a917f2590658c02df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5b335b493e42a66a917f2590658c02df","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5b335b493e42a66a917f2590658c02df"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/websocket 200 21ms","method":"POST","requestID":"5b335b493e42a66a917f2590658c02df","responseTime":21,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5b335b493e42a66a917f2590658c02df"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb1de9cbfab68bd4fbbb9ac4b06b39da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cb1de9cbfab68bd4fbbb9ac4b06b39da","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"cb1de9cbfab68bd4fbbb9ac4b06b39da"} device-1 | {"level":"info","message":"OPTIONS /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 0ms","method":"OPTIONS","requestID":"cb1de9cbfab68bd4fbbb9ac4b06b39da","responseTime":0,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"da1e9408dd9d040fa47ddf35181ead93"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da1e9408dd9d040fa47ddf35181ead93","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"da1e9408dd9d040fa47ddf35181ead93"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"da1e9408dd9d040fa47ddf35181ead93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f' connected"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da1e9408dd9d040fa47ddf35181ead93","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"6577de6a-ac72-4b31-93e7-0659e970b9f2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.365189} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da1e9408dd9d040fa47ddf35181ead93","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d000f2ec-3ad6-459f-b096-69ee9282e694","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.3695688} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"da1e9408dd9d040fa47ddf35181ead93","responseTime":4,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e588a2f7045aef03364d9c18860a825","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2e588a2f7045aef03364d9c18860a825","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2ea95df9-b85a-478b-8139-dade4d03995f? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"2e588a2f7045aef03364d9c18860a825"} device-1 | {"level":"info","message":"OPTIONS /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 1ms","method":"OPTIONS","requestID":"2e588a2f7045aef03364d9c18860a825","responseTime":1,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"7a7aa5241e34890485f5baeacb758a5c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7a7aa5241e34890485f5baeacb758a5c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7a7aa5241e34890485f5baeacb758a5c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673117,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7a7aa5241e34890485f5baeacb758a5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a7aa5241e34890485f5baeacb758a5c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"bdadbd01-8e67-4bca-bf07-218171e3e61b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.385046} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"da1e9408dd9d040fa47ddf35181ead93","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"da1e9408dd9d040fa47ddf35181ead93"} device-1 | {"level":"info","message":"PATCH /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 31ms","method":"PATCH","requestID":"da1e9408dd9d040fa47ddf35181ead93","responseTime":31,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"da1e9408dd9d040fa47ddf35181ead93"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"5f9e769f-3321-4c32-8694-fa1d25ae2146","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.3872998} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7a7aa5241e34890485f5baeacb758a5c","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d0aabe8-14f2-412d-b7bd-c75895325f1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.3917282} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"7a7aa5241e34890485f5baeacb758a5c","responseTime":2,"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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"3535c358-b2d0-47e1-bcb7-bfd92e369582","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.4025729} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a7aa5241e34890485f5baeacb758a5c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7a7aa5241e34890485f5baeacb758a5c"} device-1 | {"level":"info","message":"PATCH /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 26ms","method":"PATCH","requestID":"7a7aa5241e34890485f5baeacb758a5c","responseTime":26,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2ea95df9-b85a-478b-8139-dade4d03995f? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"7a7aa5241e34890485f5baeacb758a5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"322c7bba24aa04925bf371b4489dbea3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"322c7bba24aa04925bf371b4489dbea3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"322c7bba24aa04925bf371b4489dbea3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"322c7bba24aa04925bf371b4489dbea3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"322c7bba24aa04925bf371b4489dbea3","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"aa7472c8-59fa-416a-bbe5-8c0389c553ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.4233167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"322c7bba24aa04925bf371b4489dbea3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"322c7bba24aa04925bf371b4489dbea3"} device-1 | {"level":"info","message":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 12ms","method":"GET","requestID":"322c7bba24aa04925bf371b4489dbea3","responseTime":12,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"322c7bba24aa04925bf371b4489dbea3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"50bcd7308ee67a088637329c4749938f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"50bcd7308ee67a088637329c4749938f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50bcd7308ee67a088637329c4749938f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"50bcd7308ee67a088637329c4749938f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50bcd7308ee67a088637329c4749938f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"3ac7e4ec-93ae-432a-a7ee-93b8845c9bd1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.4399767} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50bcd7308ee67a088637329c4749938f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50bcd7308ee67a088637329c4749938f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50bcd7308ee67a088637329c4749938f"} device-1 | {"level":"info","message":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 11ms","method":"GET","requestID":"50bcd7308ee67a088637329c4749938f","responseTime":11,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"052fab28fc08df912e786669b69b6f47"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"052fab28fc08df912e786669b69b6f47","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"052fab28fc08df912e786669b69b6f47"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.85799,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"052fab28fc08df912e786669b69b6f47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"052fab28fc08df912e786669b69b6f47","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to run experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to book experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully booked experiment","requestID":"052fab28fc08df912e786669b69b6f47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eabaab10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eabaf930-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eabaab10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eabaab10-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.817656,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eabaf930-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eabaf930-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"ba893b7a-51e1-45d7-9131-e2c53756c8d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.4908376} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eabaab10-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"5b92ab54-f777-4a61-8133-8316701afd69","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.494849} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eabaab10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eabaf930-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 15ms","method":"GET","requestID":"eabaab10-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eabaf930-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 15ms","method":"GET","requestID":"eabaf930-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Setting up experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully set up experiment","requestID":"052fab28fc08df912e786669b69b6f47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eac92a00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eac97820-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully running experiment","requestID":"052fab28fc08df912e786669b69b6f47"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.426587,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.316486,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eac92a00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"eac92a00-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55696","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"bc1edd37-4906-4bfd-8bb5-1aceee403e8b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.5914621} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"063c2066-5887-4db5-a0af-3e23ec83a240","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.5921276} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"e1e9be0a-da15-4429-830d-0d7464af7a6d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.5930705} authorization-1 | {"client_addr":"127.0.0.1:55696","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.458027,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"eac92a00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eac97820-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","rebac_allow":false,"scope_allow":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":"eac97820-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff6c72055-5c1a-4682-8c4d-f0311d8eb28c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff6c72055-5c1a-4682-8c4d-f0311d8eb28c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6dabd08e-16ab-4c62-b252-3e4b0e717698","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6005514} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01a94fbc-cd49-479e-bad2-0066d3e4f4a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6010308} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 30ms","method":"GET","requestID":"eac8dbe0-793e-11ef-9733-5750b05365a5","responseTime":30,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eac92a00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"052fab28fc08df912e786669b69b6f47","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 29ms","method":"GET","requestID":"eac92a00-793e-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eac97820-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling 200 28ms","method":"POST","requestID":"eac97820-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eace8130-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eacef660-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b524dc46-3e4e-4fb8-85a1-a8a037e71583","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6197402} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.43395,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"052fab28fc08df912e786669b69b6f47"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eace8130-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","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":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"052fab28fc08df912e786669b69b6f47"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"eace8130-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"052fab28fc08df912e786669b69b6f47","responseTime":174,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d981fd4-d262-440d-aecf-0a2b07dd72ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6220021} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.175909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eacef660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","rebac_allow":false,"scope_allow":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":"eacef660-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eace8130-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling 200 16ms","method":"POST","requestID":"eace8130-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ead1b580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eacef660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling 200 21ms","method":"POST","requestID":"eacef660-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849843,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6940de76-0959-4541-9a7a-98adc792f048","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6407382} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.109075,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ead1b580-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","rebac_allow":false,"scope_allow":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":"ead1b580-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"c51800f8-5063-49c7-b4e7-1b675fc362e0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6464767} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ead1b580-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling 200 15ms","method":"POST","requestID":"ead1b580-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ead49bb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b"} device-1 | {"level":"info","message":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 19ms","method":"GET","requestID":"4f0d5d05b71b0ba8d83804a83cb6b95b","responseTime":19,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.288901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ead49bb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ead49bb0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.114986,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"38cb08748db6d57cd6e2f8fc41f6e729"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"38cb08748db6d57cd6e2f8fc41f6e729","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38cb08748db6d57cd6e2f8fc41f6e729"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.243221747Z"}]},"request_id":"b5204b6c-eb92-4f9e-9877-476b5c1dbb7d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6629212} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ead49bb0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"60e0583f-d007-45fa-8136-ad2d7275db51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.664154} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ead49bb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250773,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} device-1 | {"level":"info","message":"GET /devices/2ea95df9-b85a-478b-8139-dade4d03995f? 200 17ms","method":"GET","requestID":"ead49bb0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"38cb08748db6d57cd6e2f8fc41f6e729","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38cb08748db6d57cd6e2f8fc41f6e729","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 20ms","method":"GET","requestID":"ead4c2c0-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:00:58.291234338Z"}]},"request_id":"b5c99e68-a775-4d35-aedd-9cc52192a9d3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.672733} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Building connection plan","requestID":"052fab28fc08df912e786669b69b6f47"} 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":"6cc6665e-b3f5-48eb-abe1-5d367b449414"},{"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":"9ca0f4ad-097c-4a5d-9d48-57e15fc77636"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"75c50ee0-1981-459e-ab86-22b4960bd89a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"052fab28fc08df912e786669b69b6f47"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"38cb08748db6d57cd6e2f8fc41f6e729","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38cb08748db6d57cd6e2f8fc41f6e729"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ead84530-793e-11ef-a51e-0dff660adfff"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38cb08748db6d57cd6e2f8fc41f6e729"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ead84530-793e-11ef-a51e-0dff660adfff"} device-1 | {"level":"info","message":"GET /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69? 200 14ms","method":"GET","requestID":"38cb08748db6d57cd6e2f8fc41f6e729","responseTime":14,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"ead84530-793e-11ef-a51e-0dff660adfff","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb?id=cf66abe3-1aa1-405c-ae8f-ad03d15cdd2d","ws://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb?id=3f229076-9eb7-4cae-86e3-a6447b3c6556"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"052fab28fc08df912e786669b69b6f47"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.085388,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ead8ba60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"5af582a4-bdd9-4512-ac02-1ef81f9de778","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6930444} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36af1534-9268-46e5-a3c7-036f987d9acf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.6933253} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc'","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc'","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ead8ba60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"eadf7120-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cf66abe3-1aa1-405c-ae8f-ad03d15cdd2d\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\"","requestID":"eadf7120-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"eadf7120-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"eadfbf40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\"","requestID":"eadfbf40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"eadfbf40-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5627ea07bedf15f523cc9c4b530bb3c3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5627ea07bedf15f523cc9c4b530bb3c3","responseTime":4,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"}}},"level":"info","message":"received a callback","requestID":"5627ea07bedf15f523cc9c4b530bb3c3"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"5627ea07bedf15f523cc9c4b530bb3c3","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +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":"5627ea07bedf15f523cc9c4b530bb3c3"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"052fab28fc08df912e786669b69b6f47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eae4a140-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c0e1ec2d3f30456b1c3d246b45a0f78","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9c0e1ec2d3f30456b1c3d246b45a0f78","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70969a2c-f96d-43d7-a8bc-2dfa560fa3a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.761294} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.13796,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"}}},"level":"info","message":"received a callback","requestID":"9c0e1ec2d3f30456b1c3d246b45a0f78"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eae4a140-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","rebac_allow":false,"scope_allow":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":"eae4a140-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"eae64ef0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eae4a140-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling 200 14ms","method":"POST","requestID":"eae4a140-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c97ff34-cf93-4147-8f6c-6bda103fb034","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.7725952} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.023847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eae73950-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eae64ef0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eae64ef0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"eae64ef0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc 200 9ms","method":"GET","requestID":"eae64ef0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af873299-d3eb-4e8e-a321-0a3bd2b0de70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.7778046} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.829462,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eae73950-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eae73950-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eae73950-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling 200 9ms","method":"POST","requestID":"eae73950-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"9c0e1ec2d3f30456b1c3d246b45a0f78","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c0e1ec2d3f30456b1c3d246b45a0f78"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eaea6da0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"098f4131-cb5f-4f16-a3d7-fc4987b1c417","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.79881} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434058,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eaea6da0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eaea6da0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eaea6da0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling 200 9ms","method":"POST","requestID":"eaea6da0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eaec1b50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e945e50-1a04-4f90-8367-8370e4ef9c7f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.8099375} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.427574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eaec1b50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eaec1b50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eaec1b50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling 200 9ms","method":"POST","requestID":"eaec1b50-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"e28eb67b69559a5deeee9f31fe476b4b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e28eb67b69559a5deeee9f31fe476b4b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","requestID":"e28eb67b69559a5deeee9f31fe476b4b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.939585,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e28eb67b69559a5deeee9f31fe476b4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e28eb67b69559a5deeee9f31fe476b4b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","requestID":"e28eb67b69559a5deeee9f31fe476b4b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e28eb67b69559a5deeee9f31fe476b4b"} experiment-1 | {"level":"info","message":"GET /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c 200 11ms","method":"GET","requestID":"e28eb67b69559a5deeee9f31fe476b4b","responseTime":11,"status":200,"url":"/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"79d14364dab34a7e0e69848aac20e853"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79d14364dab34a7e0e69848aac20e853","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","requestID":"79d14364dab34a7e0e69848aac20e853"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.685852,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"79d14364dab34a7e0e69848aac20e853","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79d14364dab34a7e0e69848aac20e853","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Attempting to finish experiment","requestID":"79d14364dab34a7e0e69848aac20e853"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"eaf458b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.655576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eaf458b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"eaf458b0-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","device":"2ea95df9-b85a-478b-8139-dade4d03995f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb?id=3f229076-9eb7-4cae-86e3-a6447b3c6556 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.149","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":"a4970fc518c393c2178f4037c01bc35f"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","device":"ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3f229076-9eb7-4cae-86e3-a6447b3c6556\" from room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb?id=cf66abe3-1aa1-405c-ae8f-ad03d15cdd2d HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.150","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":"0505ef7f49faeb7c5246dd3cd25a3e28"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"cf66abe3-1aa1-405c-ae8f-ad03d15cdd2d\" in room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"cf66abe3-1aa1-405c-ae8f-ad03d15cdd2d\" from room \"http://localhost/rooms/95c72853-3a93-44a8-9a5d-132f7a1343cb\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee1c310f2d632e7f930f2f348e5fc3d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ee1c310f2d632e7f930f2f348e5fc3d7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0fcf4d31-b810-4e69-8bc6-af095311838e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.8760142} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eea3ee20-cc71-4e2a-88a9-d71175a8823a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.8760142} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"}}},"level":"info","message":"received a callback","requestID":"ee1c310f2d632e7f930f2f348e5fc3d7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fda1378fb7a269287569505e1ecb4e5c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 10ms","method":"POST","requestID":"eaf458b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fda1378fb7a269287569505e1ecb4e5c","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"}}},"level":"info","message":"received a callback","requestID":"fda1378fb7a269287569505e1ecb4e5c"} device-1 | {"data":{"peerconnection":"4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"eaf458b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc 204 34ms","method":"DELETE","requestID":"eaf458b0-793e-11ef-9733-5750b05365a5","responseTime":34,"status":204,"url":"/peerconnections/4de58c4c-6b0e-4ed3-b74f-9aecb0c646bc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"},"level":"info","message":"Successfully finished experiment","requestID":"79d14364dab34a7e0e69848aac20e853"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eafbabb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ea95df9-b85a-478b-8139-dade4d03995f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34553f85-2587-406e-857e-aa0d0a58a290","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.912182} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.652039,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eafbabb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f","object_type":"device","rebac_allow":false,"scope_allow":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":"eafbabb0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eafbabb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling 200 9ms","method":"POST","requestID":"eafbabb0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/2ea95df9-b85a-478b-8139-dade4d03995f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eafd5960-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff6c72055-5c1a-4682-8c4d-f0311d8eb28c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff6c72055-5c1a-4682-8c4d-f0311d8eb28c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"aea4b00c-b8a3-433b-a9ae-e3d5edc645ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.918436} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03c56196-939e-46b1-bd65-822065d6fedb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.9186242} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"79d14364dab34a7e0e69848aac20e853","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fec6e0ea1-e83e-416d-ad5c-55f8fe386f69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ee66508-bc5f-4731-8e9e-f91ccbbdbd37","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049660.9229982} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.341497,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eafd5960-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eafd5960-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eafd5960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling 200 8ms","method":"POST","requestID":"eafd5960-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c","requestID":"79d14364dab34a7e0e69848aac20e853"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79d14364dab34a7e0e69848aac20e853"} experiment-1 | {"level":"info","message":"DELETE /experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c 204 134ms","method":"DELETE","requestID":"79d14364dab34a7e0e69848aac20e853","responseTime":134,"status":204,"url":"/experiments/f6c72055-5c1a-4682-8c4d-f0311d8eb28c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"ee1c310f2d632e7f930f2f348e5fc3d7","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"ee1c310f2d632e7f930f2f348e5fc3d7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"fda1378fb7a269287569505e1ecb4e5c","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"fda1378fb7a269287569505e1ecb4e5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA","level":"info","message":"auth send jwt","requestID":"12d40d4f6c33497f899073f55edc7f1d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"12d40d4f6c33497f899073f55edc7f1d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"0.679","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":"8c5aaf6f265e2da88a27e8df677ec359"} gateway-1 | {"time_local":"23/Sep/2024:00:01:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"0.652","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":"6f17e5be5ac4cafeb539e43a1a232bc8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.163072,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:01Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2ea95df9-b85a-478b-8139-dade4d03995f' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12d40d4f6c33497f899073f55edc7f1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049660,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MH0.9fQBQYQ9kLyI0MO3RgaskQh6h6XyqwKw0UL9WE2cKNA"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ec6e0ea1-e83e-416d-ad5c-55f8fe386f69' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42363a05-ea18-43a4-8826-f0844f527082","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0194695} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ebe57b9b-2116-4768-bfc5-cd93a7508c81","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0229678} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9f9f3ddf-e011-4e23-a100-dc384d39b21b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0318825} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81b2f641-b4c6-4065-957a-6026326aa04d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0322704} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"64d89b22-e1cb-40c9-a05c-13a12b6354d4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0359943} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"12d40d4f6c33497f899073f55edc7f1d"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"12d40d4f6c33497f899073f55edc7f1d","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12d40d4f6c33497f899073f55edc7f1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MX0.JObUdx4Xow_-X_nK7T8Rgm9mVqzEcoGZ-4utr_v1vdg","level":"info","message":"auth send jwt","requestID":"810e2feb2a69679d1da9595c7c9f1fbc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"810e2feb2a69679d1da9595c7c9f1fbc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.886947,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"810e2feb2a69679d1da9595c7c9f1fbc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049661,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2MX0.JObUdx4Xow_-X_nK7T8Rgm9mVqzEcoGZ-4utr_v1vdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6f22496b-1fd4-4f66-89fb-d76ddf2ec91e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0569649} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1126902-4105-4a74-a5e9-a09fdaccefaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0606823} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"07675976-032c-43fb-852f-ed3475b89f73","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.0751104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"200002f7-71a4-482a-b292-b5f208083aaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.075252} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"3fd114c1-746c-4397-b4a7-23970b1ef14f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049661.078222} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"810e2feb2a69679d1da9595c7c9f1fbc"} gateway-1 | {"time_local":"23/Sep/2024:00:01:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"810e2feb2a69679d1da9595c7c9f1fbc"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"810e2feb2a69679d1da9595c7c9f1fbc","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a706f5ba2f4dce4bc197e75437f30c8a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a706f5ba2f4dce4bc197e75437f30c8a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/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":"a706f5ba2f4dce4bc197e75437f30c8a"} device-1 | {"level":"info","message":"OPTIONS /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/websocket 200 0ms","method":"OPTIONS","requestID":"a706f5ba2f4dce4bc197e75437f30c8a","responseTime":0,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e3d1c3fd24b6067c17ba9c0e1d026d9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1e3d1c3fd24b6067c17ba9c0e1d026d9","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/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":"1e3d1c3fd24b6067c17ba9c0e1d026d9"} device-1 | {"level":"info","message":"OPTIONS /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/websocket 200 1ms","method":"OPTIONS","requestID":"1e3d1c3fd24b6067c17ba9c0e1d026d9","responseTime":1,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"8038c11a0245e0de35cb1e067010862a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"8038c11a0245e0de35cb1e067010862a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8038c11a0245e0de35cb1e067010862a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"04eee10a8d8450d7d45ea621a4601fcc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04eee10a8d8450d7d45ea621a4601fcc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"04eee10a8d8450d7d45ea621a4601fcc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.681187,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8038c11a0245e0de35cb1e067010862a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8038c11a0245e0de35cb1e067010862a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.544298,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04eee10a8d8450d7d45ea621a4601fcc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04eee10a8d8450d7d45ea621a4601fcc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8038c11a0245e0de35cb1e067010862a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.038","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":"8038c11a0245e0de35cb1e067010862a"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/websocket 200 27ms","method":"POST","requestID":"8038c11a0245e0de35cb1e067010862a","responseTime":27,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"04eee10a8d8450d7d45ea621a4601fcc"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/websocket 200 35ms","method":"POST","requestID":"04eee10a8d8450d7d45ea621a4601fcc","responseTime":35,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"04eee10a8d8450d7d45ea621a4601fcc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7704b65903daef21f754c6bef18d244a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7704b65903daef21f754c6bef18d244a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"7704b65903daef21f754c6bef18d244a"} device-1 | {"level":"info","message":"OPTIONS /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 1ms","method":"OPTIONS","requestID":"7704b65903daef21f754c6bef18d244a","responseTime":1,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"04ea46ffd84a429af6189641e51c51aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"04ea46ffd84a429af6189641e51c51aa"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc854a744a2d727f3abe1f5e2b11ea44","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cc854a744a2d727f3abe1f5e2b11ea44","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"cc854a744a2d727f3abe1f5e2b11ea44"} device-1 | {"level":"info","message":"OPTIONS /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 1ms","method":"OPTIONS","requestID":"cc854a744a2d727f3abe1f5e2b11ea44","responseTime":1,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835251,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04ea46ffd84a429af6189641e51c51aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"89095dfbcc79b27da87928e3f6074913"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"89095dfbcc79b27da87928e3f6074913","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"89095dfbcc79b27da87928e3f6074913"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"30735e5e-c41c-41a3-8d5f-d71342133369","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1326718} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.662325,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"89095dfbcc79b27da87928e3f6074913","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89095dfbcc79b27da87928e3f6074913","responseTime":4,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"707b3efb-6276-4986-8deb-bb12ae32e554","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1401114} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"868a62a8-cd59-47ac-9652-4f7f48e8356e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1437242} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"89095dfbcc79b27da87928e3f6074913","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a5ce33d-b2af-4dd5-80ff-bf998204e172","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.149046} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"89095dfbcc79b27da87928e3f6074913","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"84eff6d4-5ac5-4656-827e-62d5184c1b3e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1586123} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"04ea46ffd84a429af6189641e51c51aa"} device-1 | {"level":"info","message":"PATCH /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 41ms","method":"PATCH","requestID":"04ea46ffd84a429af6189641e51c51aa","responseTime":41,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","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":"04ea46ffd84a429af6189641e51c51aa"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"5c709612-490e-48d9-8864-1d2460104e62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1714299} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"89095dfbcc79b27da87928e3f6074913","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"89095dfbcc79b27da87928e3f6074913"} device-1 | {"level":"info","message":"PATCH /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 43ms","method":"PATCH","requestID":"89095dfbcc79b27da87928e3f6074913","responseTime":43,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","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":"89095dfbcc79b27da87928e3f6074913"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"cbf2211c7dc3869f85c2e303e763fefd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cbf2211c7dc3869f85c2e303e763fefd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbf2211c7dc3869f85c2e303e763fefd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.390749,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cbf2211c7dc3869f85c2e303e763fefd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbf2211c7dc3869f85c2e303e763fefd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"7651a465-5c1a-423c-83f1-101631fb6ddc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.1979203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cbf2211c7dc3869f85c2e303e763fefd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbf2211c7dc3869f85c2e303e763fefd"} device-1 | {"level":"info","message":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 15ms","method":"GET","requestID":"cbf2211c7dc3869f85c2e303e763fefd","responseTime":15,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbf2211c7dc3869f85c2e303e763fefd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"bf005541bd6309d79f58123f2dffecd8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bf005541bd6309d79f58123f2dffecd8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf005541bd6309d79f58123f2dffecd8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178496,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf005541bd6309d79f58123f2dffecd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bf005541bd6309d79f58123f2dffecd8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"8397ea34-96a0-4448-a362-3bde7983ba84","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.219729} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf005541bd6309d79f58123f2dffecd8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf005541bd6309d79f58123f2dffecd8"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf005541bd6309d79f58123f2dffecd8"} device-1 | {"level":"info","message":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 15ms","method":"GET","requestID":"bf005541bd6309d79f58123f2dffecd8","responseTime":15,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d67e4ee941e5de3de0e5496f9ee26e06","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.217485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d67e4ee941e5de3de0e5496f9ee26e06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d67e4ee941e5de3de0e5496f9ee26e06","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to run experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to book experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully booked experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec64b190-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875591,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec64b190-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec64b190-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731003,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"6d0e8947-4bfd-4b72-b81e-4626c3f445b9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.2840505} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec64b190-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"0bad438d-1b28-40e8-9484-892dd736d722","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.2849789} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec64b190-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 19ms","method":"GET","requestID":"ec64b190-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 18ms","method":"GET","requestID":"ec64ffb0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Setting up experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully set up experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec6f8700-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully running experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec6fd520-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165259,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.311956,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec6f8700-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ec6f8700-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"2907aa44-46f4-4352-8a41-4f4a356447af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.357719} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5121514e-6d1a-4b9a-bbf2-8be2ba5f2111","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3578067} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.156379,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec6fd520-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","rebac_allow":false,"scope_allow":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":"ec6fd520-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"48a4c263-1efd-4436-a2ca-e57e09b4f223","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3589563} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ec6f8700-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 26ms","method":"GET","requestID":"ec6f38e0-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec6fd520-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling 200 24ms","method":"POST","requestID":"ec6fd520-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec6f8700-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 27ms","method":"GET","requestID":"ec6f8700-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec73ccc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62a2a57-6300-4b77-973d-4fc39eb64832#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62a2a57-6300-4b77-973d-4fc39eb64832","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8b2db7ad-71a4-435a-9543-fd0a9d49505f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3743248} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b84e6ff1-4162-418d-9370-fa3e005924c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.374463} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec7441f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"d67e4ee941e5de3de0e5496f9ee26e06","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.506743,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35b12182-afc0-4b06-aa9e-2007246adad6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3782947} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec73ccc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec73ccc0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"835c6578-ac9f-42e6-9d0a-9aa419066c94","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3813307} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.634592,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec7441f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","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":"ec73ccc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec7441f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling 200 11ms","method":"POST","requestID":"ec73ccc0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"d67e4ee941e5de3de0e5496f9ee26e06","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec7441f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling 200 11ms","method":"POST","requestID":"ec7441f0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec763dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.599355,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9215ad1b6333e0955b1cffe58c0f6d6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a3bbf67-49e4-4b84-9611-2425fc401f8f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3933172} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.988048,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec763dc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec763dc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"398f2249-2d40-4d25-96cb-e9bd53f87f1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.3974364} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec763dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling 200 10ms","method":"POST","requestID":"ec763dc0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec781280-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec7860a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724597,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} device-1 | {"level":"info","message":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 15ms","method":"GET","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c","responseTime":15,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9215ad1b6333e0955b1cffe58c0f6d6c"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec781280-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec781280-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922271,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec7860a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec7860a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"1d20d7cd4c3de4006faa88449be10343"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.031850230Z"}]},"request_id":"21a7bf9f-fe56-4451-ba95-ea2afc445a0b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.40908} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1d20d7cd4c3de4006faa88449be10343","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec781280-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d20d7cd4c3de4006faa88449be10343"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"3ba072ff-defe-4ffe-901e-4432564da2f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.4099627} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec7860a0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89735,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1d20d7cd4c3de4006faa88449be10343","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d20d7cd4c3de4006faa88449be10343","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec781280-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4049d7a8-382e-44a7-8862-b4a39647f54a? 200 17ms","method":"GET","requestID":"ec781280-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec7860a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 17ms","method":"GET","requestID":"ec7860a0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Building connection plan","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:01.075078915Z"}]},"request_id":"98fdd446-094b-41ed-91eb-a1c19fdb3419","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.4200327} 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":"6168f8f1-9d77-4fa2-a50e-d46f65694171"},{"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":"0d5634c5-9fe2-4242-8cb2-e4de5dd5f17a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"58881f60-62ec-4efe-a46e-45a5587facca"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d20d7cd4c3de4006faa88449be10343","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ec7b46d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ec7b46d0-793e-11ef-a51e-0dff660adfff"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d20d7cd4c3de4006faa88449be10343"} device-1 | {"level":"info","message":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? 200 13ms","method":"GET","requestID":"1d20d7cd4c3de4006faa88449be10343","responseTime":13,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/776c2353-b2be-4097-99e8-08e7e74e83a9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d20d7cd4c3de4006faa88449be10343"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"ec7b46d0-793e-11ef-a51e-0dff660adfff","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e?id=62ce27a3-453a-4503-80f8-7d833992642b","ws://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e?id=0b8322c5-8043-4e99-8df5-a5c0a2332f3b"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.740017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec7be310-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec7be310-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7a94f56c-b9ef-4ad2-8e0d-b0c1100ba4be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.4361997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7801192-1b74-40cf-80a9-6b9c616e57f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.4364016} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ec7be310-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f'","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f'","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"ec7be310-793e-11ef-9733-5750b05365a5","responseTime":22,"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":"ec7be310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ec811330-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\"","requestID":"ec811330-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ec811330-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ec816150-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"62ce27a3-453a-4503-80f8-7d833992642b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\"","requestID":"ec816150-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ec816150-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a8cf604a61c5a50ac9b4a865fb573a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3a8cf604a61c5a50ac9b4a865fb573a3","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"}}},"level":"info","message":"received a callback","requestID":"3a8cf604a61c5a50ac9b4a865fb573a3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"3a8cf604a61c5a50ac9b4a865fb573a3","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a8cf604a61c5a50ac9b4a865fb573a3"} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d67e4ee941e5de3de0e5496f9ee26e06"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec858000-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e572c2a-85f6-4be9-92a5-7c9eaf803f34","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.4935026} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.740181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c21ebbb39ce8365d181fecac380ecfd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4c21ebbb39ce8365d181fecac380ecfd","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec858000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec858000-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"}}},"level":"info","message":"received a callback","requestID":"4c21ebbb39ce8365d181fecac380ecfd"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ec8754c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec858000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling 200 16ms","method":"POST","requestID":"ec858000-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14abb80c-2316-466c-a2e1-89c83da96c17","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.5047605} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.022619,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec8754c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec8754c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec883f20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ec8754c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} device-1 | {"level":"info","message":"GET /peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f 200 9ms","method":"GET","requestID":"ec8754c0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7ccc903-501b-4ecf-9a38-93baad487a68","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.5104988} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.146562,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec883f20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec883f20-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec883f20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling 200 7ms","method":"POST","requestID":"ec883f20-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"4c21ebbb39ce8365d181fecac380ecfd","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"4c21ebbb39ce8365d181fecac380ecfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec8b4c60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1bcfb15-fb54-4235-813c-c773af21d91c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.5298834} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.202474,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec8b4c60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec8b4c60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec8b4c60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling 200 7ms","method":"POST","requestID":"ec8b4c60-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec8cabf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4b96c5f-7264-4cfd-a1da-0b56af44d858","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.539155} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150495,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec8cabf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec8cabf0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec8cabf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling 200 8ms","method":"POST","requestID":"ec8cabf0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"3c3e0a3764fe2818c6ba4a0128354c91"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3c3e0a3764fe2818c6ba4a0128354c91","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","requestID":"3c3e0a3764fe2818c6ba4a0128354c91"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.410091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3c3e0a3764fe2818c6ba4a0128354c91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c3e0a3764fe2818c6ba4a0128354c91","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","requestID":"3c3e0a3764fe2818c6ba4a0128354c91"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c3e0a3764fe2818c6ba4a0128354c91"} experiment-1 | {"level":"info","message":"GET /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832 200 14ms","method":"GET","requestID":"3c3e0a3764fe2818c6ba4a0128354c91","responseTime":14,"status":200,"url":"/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"be935be96df4b856af1184e97f1eb51c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"be935be96df4b856af1184e97f1eb51c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","requestID":"be935be96df4b856af1184e97f1eb51c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.205562,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"be935be96df4b856af1184e97f1eb51c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be935be96df4b856af1184e97f1eb51c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Attempting to finish experiment","requestID":"be935be96df4b856af1184e97f1eb51c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.15458,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","device":"4049d7a8-382e-44a7-8862-b4a39647f54a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","device":"776c2353-b2be-4097-99e8-08e7e74e83a9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e?id=62ce27a3-453a-4503-80f8-7d833992642b HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.172","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":"0c2a365973eb4ee292503360801bb9da"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"62ce27a3-453a-4503-80f8-7d833992642b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"62ce27a3-453a-4503-80f8-7d833992642b\" from room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e?id=0b8322c5-8043-4e99-8df5-a5c0a2332f3b HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.174","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":"973055097b65168e4b433422a0f3ba5b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" in room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0b8322c5-8043-4e99-8df5-a5c0a2332f3b\" from room \"http://localhost/rooms/4eccd8a3-df44-42e6-895b-0d70a5796f3e\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2e6f5e3f-c222-4b1f-ac6c-c69e1664360f': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"be48673c-c69e-40fd-a014-77b3d2253fe9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.6356077} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0f7c601917f6d300e82515caacce3a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d0f7c601917f6d300e82515caacce3a9","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"700cab9c-e2c2-4f70-bfc9-ba50592d1e2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.6361666} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5","responseTime":10,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"}}},"level":"info","message":"received a callback","requestID":"d0f7c601917f6d300e82515caacce3a9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6adf6f59d8236a6971c30b69890f1945","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6adf6f59d8236a6971c30b69890f1945","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"}}},"level":"info","message":"received a callback","requestID":"6adf6f59d8236a6971c30b69890f1945"} device-1 | {"data":{"peerconnection":"2e6f5e3f-c222-4b1f-ac6c-c69e1664360f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f 204 44ms","method":"DELETE","requestID":"ec98b9e0-793e-11ef-9733-5750b05365a5","responseTime":44,"status":204,"url":"/peerconnections/2e6f5e3f-c222-4b1f-ac6c-c69e1664360f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"},"level":"info","message":"Successfully finished experiment","requestID":"be935be96df4b856af1184e97f1eb51c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eca2f310-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4049d7a8-382e-44a7-8862-b4a39647f54a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83b18225-cc59-479c-b542-12477015ed90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.6880274} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.779716,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eca2f310-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a","object_type":"device","rebac_allow":false,"scope_allow":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":"eca2f310-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eca2f310-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling 200 14ms","method":"POST","requestID":"eca2f310-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/4049d7a8-382e-44a7-8862-b4a39647f54a/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62a2a57-6300-4b77-973d-4fc39eb64832': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62a2a57-6300-4b77-973d-4fc39eb64832","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"4eb905f6-b6be-4dbb-83e8-09be484375cf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.6955957} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbc99caa-3886-4f9b-bf39-b031e4cc2971","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.6962702} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"be935be96df4b856af1184e97f1eb51c","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eca58b20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F776c2353-b2be-4097-99e8-08e7e74e83a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a198e6d5-2118-468b-81a3-bc103a5ca18b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.7054732} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.061653,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eca58b20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9","object_type":"device","rebac_allow":false,"scope_allow":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":"eca58b20-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eca58b20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling 200 14ms","method":"POST","requestID":"eca58b20-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/776c2353-b2be-4097-99e8-08e7e74e83a9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832","requestID":"be935be96df4b856af1184e97f1eb51c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be935be96df4b856af1184e97f1eb51c"} experiment-1 | {"level":"info","message":"DELETE /experiments/d62a2a57-6300-4b77-973d-4fc39eb64832 204 174ms","method":"DELETE","requestID":"be935be96df4b856af1184e97f1eb51c","responseTime":174,"status":204,"url":"/experiments/d62a2a57-6300-4b77-973d-4fc39eb64832"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"d0f7c601917f6d300e82515caacce3a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"d0f7c601917f6d300e82515caacce3a9","responseTime":139,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"6adf6f59d8236a6971c30b69890f1945","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"6adf6f59d8236a6971c30b69890f1945"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"2badbda13c9dda532f1e173e648c11fb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2badbda13c9dda532f1e173e648c11fb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.836968,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"0.698","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":"ae23e54a04bd39497c1c2dedca63ee70"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2badbda13c9dda532f1e173e648c11fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"0.710","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":"52b5215a7cfe518c9fa9029663e5f476"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4049d7a8-382e-44a7-8862-b4a39647f54a' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/776c2353-b2be-4097-99e8-08e7e74e83a9' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"78b8c290-3786-49c1-8ab8-61da6c261054","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.805089} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8cf021c-e4bf-446d-89d0-71860b9bf0a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.809373} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"4314fb6d-cbd8-4947-99f1-e6fd658e91cf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8197844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"afa35529-736b-4563-b6fa-883dd12cd59c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.819919} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"d69f9e64-1c47-40fa-ba8a-e23fc1f36723","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8231785} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2badbda13c9dda532f1e173e648c11fb"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"2badbda13c9dda532f1e173e648c11fb","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2badbda13c9dda532f1e173e648c11fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8","level":"info","message":"auth send jwt","requestID":"795307c8a2b193cb9e469115dd378302"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"795307c8a2b193cb9e469115dd378302","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"795307c8a2b193cb9e469115dd378302"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.644943,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"795307c8a2b193cb9e469115dd378302","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049663,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2M30.foebbRrMIjY7jHL9j6re-sWdAFZlnJRLV_iFuRkLLx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"678c9ea9-28b5-4eb2-a626-b3974d6cd495","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8435445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85de3382-e7ef-442e-a050-5ab9edfe2e2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8471737} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9a1a769a-8e16-4a01-b2e4-528053b55265","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8563037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35e5ebd9-8db7-4f66-84ba-40fd3b825f7a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.8566337} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"2403497c-6181-406f-b428-f94fbf839b33","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049663.859641} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"795307c8a2b193cb9e469115dd378302"} gateway-1 | {"time_local":"23/Sep/2024:00:01:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"795307c8a2b193cb9e469115dd378302"} device-1 | {"level":"info","message":"POST /devices? 201 32ms","method":"POST","requestID":"795307c8a2b193cb9e469115dd378302","responseTime":32,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NH0.N4C4LPjc-IxB5miQshv72ZFRE-2R2H3tcD56Y8g-hWc","level":"info","message":"auth send jwt","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211487,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049664,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NH0.N4C4LPjc-IxB5miQshv72ZFRE-2R2H3tcD56Y8g-hWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"8a1d04d2-335c-46a4-8da6-14ebfca14bc0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049664.3447545} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a4fd671-d36c-499b-8c0d-677ea1440c5c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049664.351309} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"d22e41d6-5888-4473-b075-4f3b779b8182","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049664.3659303} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6"} device-1 | {"level":"info","message":"PATCH /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff 200 38ms","method":"PATCH","requestID":"f5a9a12662360bd9ac3e4a50c4eaf9d6","responseTime":38,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NH0.N4C4LPjc-IxB5miQshv72ZFRE-2R2H3tcD56Y8g-hWc","level":"info","message":"auth send jwt","requestID":"45958d1390f4417e4cabd8ecce11f4a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"45958d1390f4417e4cabd8ecce11f4a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"45958d1390f4417e4cabd8ecce11f4a1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2903,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"45958d1390f4417e4cabd8ecce11f4a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049664,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NH0.N4C4LPjc-IxB5miQshv72ZFRE-2R2H3tcD56Y8g-hWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45958d1390f4417e4cabd8ecce11f4a1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"45958d1390f4417e4cabd8ecce11f4a1"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/websocket 200 20ms","method":"POST","requestID":"45958d1390f4417e4cabd8ecce11f4a1","responseTime":20,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"45958d1390f4417e4cabd8ecce11f4a1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a846ea37023ae38311e9ac95caae4455","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a846ea37023ae38311e9ac95caae4455","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/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":"a846ea37023ae38311e9ac95caae4455"} device-1 | {"level":"info","message":"OPTIONS /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/websocket 200 1ms","method":"OPTIONS","requestID":"a846ea37023ae38311e9ac95caae4455","responseTime":1,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc","level":"info","message":"auth send jwt","requestID":"0768208237f38aebb5bfba7f1e35718b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0768208237f38aebb5bfba7f1e35718b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0768208237f38aebb5bfba7f1e35718b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.806377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0768208237f38aebb5bfba7f1e35718b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049665,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0768208237f38aebb5bfba7f1e35718b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0768208237f38aebb5bfba7f1e35718b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/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":"0768208237f38aebb5bfba7f1e35718b"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/websocket 200 23ms","method":"POST","requestID":"0768208237f38aebb5bfba7f1e35718b","responseTime":23,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8c6c3e3a64413083f2f311f8afaec31","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c8c6c3e3a64413083f2f311f8afaec31","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"c8c6c3e3a64413083f2f311f8afaec31"} device-1 | {"level":"info","message":"OPTIONS /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 1ms","method":"OPTIONS","requestID":"c8c6c3e3a64413083f2f311f8afaec31","responseTime":1,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc","level":"info","message":"auth send jwt","requestID":"4ef0cca43efc6198bc38379bc451d2cf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4ef0cca43efc6198bc38379bc451d2cf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4ef0cca43efc6198bc38379bc451d2cf"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.259225,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4ef0cca43efc6198bc38379bc451d2cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049665,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ef0cca43efc6198bc38379bc451d2cf","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"d364331b-5a91-4315-9515-f159aae5c5c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049665.96157} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4ef0cca43efc6198bc38379bc451d2cf","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2320aa0-5c3f-4b68-b2fd-551f4ba4586c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049665.9696596} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4ef0cca43efc6198bc38379bc451d2cf","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"73a2878d-d11e-4fc3-aea0-098e0002b475","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049665.9824336} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ef0cca43efc6198bc38379bc451d2cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4ef0cca43efc6198bc38379bc451d2cf"} gateway-1 | {"time_local":"23/Sep/2024:00:01:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","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":"4ef0cca43efc6198bc38379bc451d2cf"} device-1 | {"level":"info","message":"PATCH /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 39ms","method":"PATCH","requestID":"4ef0cca43efc6198bc38379bc451d2cf","responseTime":39,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc","level":"info","message":"auth send jwt","requestID":"a7f794afb1e8772e387a333e17537cd2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a7f794afb1e8772e387a333e17537cd2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a7f794afb1e8772e387a333e17537cd2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070671,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a7f794afb1e8772e387a333e17537cd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049665,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2NX0.XaRy2Y68v8biQW_qh1xszpF-8nGv_vLeqgEoG-6rxPc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a7f794afb1e8772e387a333e17537cd2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"cd7bdad6-67b6-4eac-a904-409be3166532","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.0081291} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7f794afb1e8772e387a333e17537cd2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a7f794afb1e8772e387a333e17537cd2"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7f794afb1e8772e387a333e17537cd2"} device-1 | {"level":"info","message":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 13ms","method":"GET","requestID":"a7f794afb1e8772e387a333e17537cd2","responseTime":13,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"774669db075ebf0c58ee400279834064"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"774669db075ebf0c58ee400279834064","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"774669db075ebf0c58ee400279834064"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240319,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"774669db075ebf0c58ee400279834064","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"774669db075ebf0c58ee400279834064","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"235f0ae5-c3cf-4e56-bf56-792b1e29d679","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.0312412} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"774669db075ebf0c58ee400279834064","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"774669db075ebf0c58ee400279834064"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"774669db075ebf0c58ee400279834064"} device-1 | {"level":"info","message":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? 200 14ms","method":"GET","requestID":"774669db075ebf0c58ee400279834064","responseTime":14,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"066d73f533753a2855b6efb7143014a7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"066d73f533753a2855b6efb7143014a7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"066d73f533753a2855b6efb7143014a7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.996333,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"066d73f533753a2855b6efb7143014a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"066d73f533753a2855b6efb7143014a7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to run experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to book experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully booked experiment","requestID":"066d73f533753a2855b6efb7143014a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee11ec60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee121370-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795094,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee11ec60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee11ec60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957435,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee121370-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee121370-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"45210d1f-c810-46d0-b138-531bdf70139e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.0943167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee11ec60-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"9523fd53-e842-46cc-8c1a-1abdf06b506a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.095264} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee121370-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee11ec60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 14ms","method":"GET","requestID":"ee11ec60-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee121370-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? 200 14ms","method":"GET","requestID":"ee121370-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Setting up experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully set up experiment","requestID":"066d73f533753a2855b6efb7143014a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee1bb060-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee1bd770-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee1c2590-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929969,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully running experiment","requestID":"066d73f533753a2855b6efb7143014a7"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee1bb060-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee1bb060-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee1bd770-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ee1bd770-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"fb7b4e00-387a-46ec-be53-e22d5ba56445","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1660895} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"0ba38a11-39c0-4b27-9ceb-d56da9590b9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1678102} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ee1bb060-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45084","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ee1bd770-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"222546f2-eaf0-4561-a8bc-298c9fc95bf4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1708207} authorization-1 | {"client_addr":"127.0.0.1:45084","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.977451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee1c2590-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","rebac_allow":false,"scope_allow":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":"ee1c2590-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee1bb060-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 25ms","method":"GET","requestID":"ee1bb060-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee1bd770-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? 200 25ms","method":"GET","requestID":"ee1bd770-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee1c2590-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling 200 25ms","method":"POST","requestID":"ee1c2590-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee201d30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee209260-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F007a192d-2321-48b5-b010-e128aae96d0b#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F007a192d-2321-48b5-b010-e128aae96d0b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"36e926dc-8d41-4c83-9d67-128892f42849","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1818516} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a55ce26-bc6f-453d-a0d7-4ddd774d8dba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1822639} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"066d73f533753a2855b6efb7143014a7","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f03439d1-3d79-4e6c-b2d8-ad337a7a7133","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.186395} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.896127,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee201d30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","rebac_allow":false,"scope_allow":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":"ee201d30-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4bbee7d5-5e6e-4029-8dd6-7994fe83fed1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.1919076} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.042904,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee209260-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","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":"ee201d30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling 200 15ms","method":"POST","requestID":"ee201d30-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ee209260-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"066d73f533753a2855b6efb7143014a7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"066d73f533753a2855b6efb7143014a7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"066d73f533753a2855b6efb7143014a7","responseTime":155,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee209260-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling 200 16ms","method":"POST","requestID":"ee209260-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee232a70-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"acd78f0d847cb9053f662f9b3dd823cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acd78f0d847cb9053f662f9b3dd823cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acd78f0d847cb9053f662f9b3dd823cb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30ce2804-c5c3-487c-b1b5-f62b7b249f69","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2038565} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.163144,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.360203,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee232a70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","rebac_allow":false,"scope_allow":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":"ee232a70-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"acd78f0d847cb9053f662f9b3dd823cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"acd78f0d847cb9053f662f9b3dd823cb","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee232a70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling 200 11ms","method":"POST","requestID":"ee232a70-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"f56c82d9-9c07-4cf9-85d1-4ad18e61df13","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.210537} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acd78f0d847cb9053f662f9b3dd823cb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee252640-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee257460-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acd78f0d847cb9053f662f9b3dd823cb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195537,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} device-1 | {"level":"info","message":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 15ms","method":"GET","requestID":"acd78f0d847cb9053f662f9b3dd823cb","responseTime":15,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acd78f0d847cb9053f662f9b3dd823cb"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee252640-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee252640-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729343,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee257460-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee257460-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.819745186Z"}]},"request_id":"a044241b-1d3f-4729-9146-a866a95bc6a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2206135} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"1a2281d6bc533c80457c2781bb046946"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a2281d6bc533c80457c2781bb046946","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee252640-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"324a72bc-fd2d-4ef9-ba27-b647e4921166","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.221501} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ee257460-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a2281d6bc533c80457c2781bb046946"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee252640-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} device-1 | {"level":"info","message":"GET /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f? 200 14ms","method":"GET","requestID":"ee252640-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683549,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee257460-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? 200 13ms","method":"GET","requestID":"ee257460-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1a2281d6bc533c80457c2781bb046946","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a2281d6bc533c80457c2781bb046946","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Building connection plan","requestID":"066d73f533753a2855b6efb7143014a7"} 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":"10158b15-2d32-41a3-ae9f-f7efed100f3b"},{"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":"91961db9-dfc1-4ec2-8cfd-2aec1f612287"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"03bc5401-0c56-44b5-9698-0f7f1034b938"}]},"level":"info","message":"Built pairwise service configurations","requestID":"066d73f533753a2855b6efb7143014a7"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ee27e560-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ee27e560-793e-11ef-a51e-0dff660adfff"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:03.856271029Z"}]},"request_id":"c949f0ed-98e3-4f23-b623-2869d2da4a84","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2306588} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ee27e560-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1a2281d6bc533c80457c2781bb046946","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51?id=2503ffb3-4a73-453a-97a4-870b46a04863","ws://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51?id=49123a50-c239-4617-8d51-1736aa2c07fd"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"066d73f533753a2855b6efb7143014a7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a2281d6bc533c80457c2781bb046946"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a2281d6bc533c80457c2781bb046946"} device-1 | {"level":"info","message":"GET /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff? 200 11ms","method":"GET","requestID":"1a2281d6bc533c80457c2781bb046946","responseTime":11,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.701585,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee285a90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee285a90-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9d79478f-1b13-4bd4-8be2-ffc7ba23be11","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2444544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf72f320-8f0a-4e00-8ea8-ccd86f2204b5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2447183} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ee285a90-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767'","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767'","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"ee285a90-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"ee285a90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ee2d3c90-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\"","requestID":"ee2d3c90-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ee2d3c90-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ee2d8ab0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2503ffb3-4a73-453a-97a4-870b46a04863\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\"","requestID":"ee2d8ab0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ee2d8ab0-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8fd70a37017de14ddb86b3dbe5ceb3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a8fd70a37017de14ddb86b3dbe5ceb3d","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"}}},"level":"info","message":"received a callback","requestID":"a8fd70a37017de14ddb86b3dbe5ceb3d"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"a8fd70a37017de14ddb86b3dbe5ceb3d","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8fd70a37017de14ddb86b3dbe5ceb3d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"066d73f533753a2855b6efb7143014a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee30bf00-793e-11ef-9733-5750b05365a5"} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61fef36b-c42c-4014-8636-9f7511af1db8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.2926347} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.25791,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee30bf00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee30bf00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee30bf00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling 200 22ms","method":"POST","requestID":"ee30bf00-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db4f99ddb7861c68783e2713d133475a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"db4f99ddb7861c68783e2713d133475a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee346880-793e-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"}}},"level":"info","message":"received a callback","requestID":"db4f99ddb7861c68783e2713d133475a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"467d3bb4-9600-47d9-9c67-1e8e5c9cdcac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.3167179} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.674448,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee346880-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","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":"getPeerconnectionsByPeerconnectionId called","requestID":"ee3552e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee346880-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee346880-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling 200 9ms","method":"POST","requestID":"ee346880-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F35982d14-a197-48ce-bb88-b0dc938fd767","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55fabf60-6536-40ea-947f-b7f78f606491","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.3221154} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.453169,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee3552e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee3552e0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ee3552e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767 200 8ms","method":"GET","requestID":"ee3552e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"db4f99ddb7861c68783e2713d133475a","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"db4f99ddb7861c68783e2713d133475a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee38fc60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4892272-7254-4e9b-bc0d-f1364967633f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.3471167} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.419029,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee38fc60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee38fc60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee38fc60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling 200 8ms","method":"POST","requestID":"ee38fc60-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee3a8300-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fc47420-cb7e-4282-86f0-f2991c992825","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.3572743} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413147,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee3a8300-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee3a8300-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee3a8300-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling 200 10ms","method":"POST","requestID":"ee3a8300-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"b68c30dbdc23c2e1efcc63277b6f2423"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b68c30dbdc23c2e1efcc63277b6f2423","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/007a192d-2321-48b5-b010-e128aae96d0b","requestID":"b68c30dbdc23c2e1efcc63277b6f2423"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.95576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b68c30dbdc23c2e1efcc63277b6f2423","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b68c30dbdc23c2e1efcc63277b6f2423","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/007a192d-2321-48b5-b010-e128aae96d0b","requestID":"b68c30dbdc23c2e1efcc63277b6f2423"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/007a192d-2321-48b5-b010-e128aae96d0b HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b68c30dbdc23c2e1efcc63277b6f2423"} experiment-1 | {"level":"info","message":"GET /experiments/007a192d-2321-48b5-b010-e128aae96d0b 200 11ms","method":"GET","requestID":"b68c30dbdc23c2e1efcc63277b6f2423","responseTime":11,"status":200,"url":"/experiments/007a192d-2321-48b5-b010-e128aae96d0b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"2122c3a2d3d006bab232281ae9d70c83"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2122c3a2d3d006bab232281ae9d70c83","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/007a192d-2321-48b5-b010-e128aae96d0b","requestID":"2122c3a2d3d006bab232281ae9d70c83"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.364515,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2122c3a2d3d006bab232281ae9d70c83","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2122c3a2d3d006bab232281ae9d70c83","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Attempting to finish experiment","requestID":"2122c3a2d3d006bab232281ae9d70c83"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ee424b30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.123484,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee424b30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee424b30-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51?id=49123a50-c239-4617-8d51-1736aa2c07fd HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.154","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"56c381fe2ca32f4ee77c8696cb3b85db"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"49123a50-c239-4617-8d51-1736aa2c07fd\" from room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767","device":"e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","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/35982d14-a197-48ce-bb88-b0dc938fd767' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51?id=2503ffb3-4a73-453a-97a4-870b46a04863 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.154","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":"81b1d730dcfd6671a95abb568152df66"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2503ffb3-4a73-453a-97a4-870b46a04863\" in room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2503ffb3-4a73-453a-97a4-870b46a04863\" from room \"http://localhost/rooms/c691ba16-b3d0-48be-9c7b-5ac447750c51\""} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F35982d14-a197-48ce-bb88-b0dc938fd767': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F35982d14-a197-48ce-bb88-b0dc938fd767","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"afe5e9c1-f0f0-4334-be3c-381e9c9e3465","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4228168} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb13f52acd8d93a09074b8162afd64f6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fb13f52acd8d93a09074b8162afd64f6","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9bed8bcc-0c16-4a61-8bfe-b2051458fdc6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4230778} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ee424b30-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00fb874cfc6b3c2296c54c2c80f661dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"}}},"level":"info","message":"received a callback","requestID":"fb13f52acd8d93a09074b8162afd64f6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"00fb874cfc6b3c2296c54c2c80f661dd","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"}}},"level":"info","message":"received a callback","requestID":"00fb874cfc6b3c2296c54c2c80f661dd"} device-1 | {"data":{"peerconnection":"35982d14-a197-48ce-bb88-b0dc938fd767","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ee424b30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767 204 41ms","method":"DELETE","requestID":"ee424b30-793e-11ef-9733-5750b05365a5","responseTime":41,"status":204,"url":"/peerconnections/35982d14-a197-48ce-bb88-b0dc938fd767"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/007a192d-2321-48b5-b010-e128aae96d0b"},"level":"info","message":"Successfully finished experiment","requestID":"2122c3a2d3d006bab232281ae9d70c83"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee4ad6b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe3a74d94-13c9-4ea1-a7e3-02f26a26a04f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1eeaee0-f778-4452-b077-bd2eac745e3b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4653592} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.524681,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee4ad6b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f","object_type":"device","rebac_allow":false,"scope_allow":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":"ee4ad6b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee4ad6b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling 200 11ms","method":"POST","requestID":"ee4ad6b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee4cf990-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F007a192d-2321-48b5-b010-e128aae96d0b': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F007a192d-2321-48b5-b010-e128aae96d0b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"c7826306-e66c-4672-9a66-926b9ad9dcfb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4743204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0608a0bc-bcd7-442e-b0bc-29f0899cbd94","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4746456} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"2122c3a2d3d006bab232281ae9d70c83","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea11eef0-814a-43b5-9841-22a4e315f8ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63c12101-faaf-4be8-b453-2bc969d67756","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.4784923} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.35167,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee4cf990-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee4cf990-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee4cf990-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling 200 10ms","method":"POST","requestID":"ee4cf990-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/ea11eef0-814a-43b5-9841-22a4e315f8ff/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/007a192d-2321-48b5-b010-e128aae96d0b","requestID":"2122c3a2d3d006bab232281ae9d70c83"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/007a192d-2321-48b5-b010-e128aae96d0b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2122c3a2d3d006bab232281ae9d70c83"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"2.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"66f51548d1f3a90aea9ef1800ed70e34"} experiment-1 | {"level":"info","message":"DELETE /experiments/007a192d-2321-48b5-b010-e128aae96d0b 204 157ms","method":"DELETE","requestID":"2122c3a2d3d006bab232281ae9d70c83","responseTime":157,"status":204,"url":"/experiments/007a192d-2321-48b5-b010-e128aae96d0b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"fb13f52acd8d93a09074b8162afd64f6","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"fb13f52acd8d93a09074b8162afd64f6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"00fb874cfc6b3c2296c54c2c80f661dd","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"00fb874cfc6b3c2296c54c2c80f661dd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"7b34d962540100cd7eac1d9e96ec89b0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7b34d962540100cd7eac1d9e96ec89b0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.660","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":"a50a1d1d91d5c0d7d5ab857bdc4a1c9a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.059913,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7b34d962540100cd7eac1d9e96ec89b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","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/ea11eef0-814a-43b5-9841-22a4e315f8ff' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8e63bfcf-4cc5-4d6e-8ee6-27d4ea64cce6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.5762424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e3a74d94-13c9-4ea1-a7e3-02f26a26a04f' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c56686a-08a1-44c5-92c6-584b170affae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.5823588} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3247027f-f9d3-4828-a436-1e1d91f8080e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.59934} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20947549-4f92-4536-be64-5a31fe70cbd7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.5999668} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"ff9662e8-f44b-4c15-8df3-0f108055c62f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.6052034} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7b34d962540100cd7eac1d9e96ec89b0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b34d962540100cd7eac1d9e96ec89b0"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"7b34d962540100cd7eac1d9e96ec89b0","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8","level":"info","message":"auth send jwt","requestID":"80f18f59a6002b33ba903d661f957c9e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80f18f59a6002b33ba903d661f957c9e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"80f18f59a6002b33ba903d661f957c9e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.751597,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"80f18f59a6002b33ba903d661f957c9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049666,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2Nn0.7xEv3CoJzFmMCM_CcxlJ_vmy5gfKXjijUjE501J6Nw8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d32cf4b3-05eb-4b9f-b1ae-144ecec4ba44","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.6313977} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6fb2a274-4a9d-4a8c-8247-d5b9c582350a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.6360803} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"46a67087-52b7-4c61-9aee-fe4cd2ac962c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.646473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a404547-1327-4285-ba83-1cdefeccffed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.6466491} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"d9659fff-9753-4f53-a4e5-f78bc9f45470","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049666.650612} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"80f18f59a6002b33ba903d661f957c9e"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"80f18f59a6002b33ba903d661f957c9e","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80f18f59a6002b33ba903d661f957c9e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2N30.Yc52Q-lS3ycwo_YsswfPCfuEywIl8JwsSqq_Oy0SxT4","level":"info","message":"auth send jwt","requestID":"c41eaceb775ede5ccc8dcbd945ca5529"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c41eaceb775ede5ccc8dcbd945ca5529"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226277,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c41eaceb775ede5ccc8dcbd945ca5529","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049667,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2N30.Yc52Q-lS3ycwo_YsswfPCfuEywIl8JwsSqq_Oy0SxT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"f6d6a305-829b-460d-809a-0c6af742cff5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049667.1464121} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dd8285e-479a-4c35-a449-2da958442f01","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049667.1539097} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"608195b0-5801-4bd0-8585-5540566ccaa9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049667.1669831} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c41eaceb775ede5ccc8dcbd945ca5529"} gateway-1 | {"time_local":"23/Sep/2024:00:01:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0c1d16bb-12c5-4f70-9c67-79df94686454 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c41eaceb775ede5ccc8dcbd945ca5529"} device-1 | {"level":"info","message":"PATCH /devices/0c1d16bb-12c5-4f70-9c67-79df94686454 200 36ms","method":"PATCH","requestID":"c41eaceb775ede5ccc8dcbd945ca5529","responseTime":36,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2N30.Yc52Q-lS3ycwo_YsswfPCfuEywIl8JwsSqq_Oy0SxT4","level":"info","message":"auth send jwt","requestID":"86476f8f4c5f25cbaef49c1596004eeb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"86476f8f4c5f25cbaef49c1596004eeb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"86476f8f4c5f25cbaef49c1596004eeb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"86476f8f4c5f25cbaef49c1596004eeb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049667,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2N30.Yc52Q-lS3ycwo_YsswfPCfuEywIl8JwsSqq_Oy0SxT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86476f8f4c5f25cbaef49c1596004eeb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"86476f8f4c5f25cbaef49c1596004eeb"} gateway-1 | {"time_local":"23/Sep/2024:00:01:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"86476f8f4c5f25cbaef49c1596004eeb"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/websocket 200 15ms","method":"POST","requestID":"86476f8f4c5f25cbaef49c1596004eeb","responseTime":15,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85c007dd203006abe5e4b69d34ba858f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"85c007dd203006abe5e4b69d34ba858f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/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":"85c007dd203006abe5e4b69d34ba858f"} device-1 | {"level":"info","message":"OPTIONS /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/websocket 200 1ms","method":"OPTIONS","requestID":"85c007dd203006abe5e4b69d34ba858f","responseTime":1,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"aece6784597e3f06a253a2af82ca1c5e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aece6784597e3f06a253a2af82ca1c5e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aece6784597e3f06a253a2af82ca1c5e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.355456,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aece6784597e3f06a253a2af82ca1c5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aece6784597e3f06a253a2af82ca1c5e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aece6784597e3f06a253a2af82ca1c5e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/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":"aece6784597e3f06a253a2af82ca1c5e"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/websocket 200 23ms","method":"POST","requestID":"aece6784597e3f06a253a2af82ca1c5e","responseTime":23,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eab704574a7f861fb87229494a90a711","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"eab704574a7f861fb87229494a90a711","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"eab704574a7f861fb87229494a90a711"} device-1 | {"level":"info","message":"OPTIONS /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 1ms","method":"OPTIONS","requestID":"eab704574a7f861fb87229494a90a711","responseTime":1,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154104,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"6bc3746a-c5af-47d2-bc86-5004e9284ff1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.7192526} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7cd66fbb-4741-4883-9dc9-751a29092e5b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.726471} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"888a759c-3302-4cd8-8bfc-62ce87b7cc3d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.7392662} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5"} device-1 | {"level":"info","message":"PATCH /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 36ms","method":"PATCH","requestID":"b3d8bc8c36e66ef6241fe24ada9140c5","responseTime":36,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.042","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":"b3d8bc8c36e66ef6241fe24ada9140c5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"d33da6b566b41ddbca587d908d96bc40"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d33da6b566b41ddbca587d908d96bc40","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d33da6b566b41ddbca587d908d96bc40"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227159,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d33da6b566b41ddbca587d908d96bc40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d33da6b566b41ddbca587d908d96bc40","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"93b14963-2334-46f4-a59a-d20ad9c09641","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.7660375} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d33da6b566b41ddbca587d908d96bc40","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d33da6b566b41ddbca587d908d96bc40"} device-1 | {"level":"info","message":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 21ms","method":"GET","requestID":"d33da6b566b41ddbca587d908d96bc40","responseTime":21,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d33da6b566b41ddbca587d908d96bc40"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"4643b49ec047f478e30594b4c60b9ed7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4643b49ec047f478e30594b4c60b9ed7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4643b49ec047f478e30594b4c60b9ed7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253338,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4643b49ec047f478e30594b4c60b9ed7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4643b49ec047f478e30594b4c60b9ed7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"81e019fd-f23a-4fe2-bd27-541d93f5d352","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.7962868} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4643b49ec047f478e30594b4c60b9ed7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4643b49ec047f478e30594b4c60b9ed7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4643b49ec047f478e30594b4c60b9ed7"} device-1 | {"level":"info","message":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? 200 17ms","method":"GET","requestID":"4643b49ec047f478e30594b4c60b9ed7","responseTime":17,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"d660fdb11f2f42bdd6e580db4205198d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d660fdb11f2f42bdd6e580db4205198d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d660fdb11f2f42bdd6e580db4205198d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.005122,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d660fdb11f2f42bdd6e580db4205198d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d660fdb11f2f42bdd6e580db4205198d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to run experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to book experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully booked experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efb7d430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efb82250-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.453357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efb7d430-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efb7d430-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.011564,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efb82250-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efb82250-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"70352975-cac8-4e73-8840-20b813a4b9c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.8623562} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"efb7d430-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"533ed83e-681f-4be5-82eb-355fdb1ee59b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.8634617} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"efb82250-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efb7d430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 19ms","method":"GET","requestID":"efb7d430-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efb82250-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? 200 18ms","method":"GET","requestID":"efb82250-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Setting up experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully set up experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efc31ed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efc36cf0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully running experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.744477,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354612,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efc31ed0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"efc31ed0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.897872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72509d6b-b382-4dd7-ae4f-7052a0625979","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9354968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"6025d401-afd0-47bb-a4fd-f690f0a92ec3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9419067} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efc36cf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","rebac_allow":false,"scope_allow":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":"efc36cf0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"0f170055-cb25-4aab-b845-0e1d9d590206","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9429302} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"efc31ed0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F279b8abe-c2cb-4ff6-b411-bb8a72f65e66#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F279b8abe-c2cb-4ff6-b411-bb8a72f65e66","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"96652ae4-e730-415f-bbd5-9648a3fb7fc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.948738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d897b3a-df4e-49d7-8880-bc4f9fd02890","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.948992} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efc36cf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d660fdb11f2f42bdd6e580db4205198d","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling 200 23ms","method":"POST","requestID":"efc36cf0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 28ms","method":"GET","requestID":"efc2d0b0-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efc31ed0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? 200 27ms","method":"GET","requestID":"efc31ed0-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efc7b2b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efc800d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61913cbe-d504-460a-b9a0-3b039b91b67f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9606164} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.077885,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d660fdb11f2f42bdd6e580db4205198d"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efc7b2b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","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":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efc7b2b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"efc7b2b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"d660fdb11f2f42bdd6e580db4205198d","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling 200 10ms","method":"POST","requestID":"efc7b2b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2bafe67-929c-4b86-93fb-ae793fb6b9c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9635358} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972432,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efc800d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","rebac_allow":false,"scope_allow":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":"efc800d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efc800d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling 200 11ms","method":"POST","requestID":"efc800d0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efca23b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182613,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22a5aa17-74f6-4a2b-a8a0-8f81b1b6adf2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9773157} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.090057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efca23b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","rebac_allow":false,"scope_allow":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":"efca23b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"cc233d6c-4783-4b41-84ad-3acbf3154f07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.979327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efca23b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling 200 14ms","method":"POST","requestID":"efca23b0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 17ms","method":"GET","requestID":"bdcfd28f9c8d7f46900f4a3b5cf9df6a","responseTime":17,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efcc94b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"efccbbc0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk","level":"info","message":"auth send jwt","requestID":"069665152f483485b2c31c553bc8e2a6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"069665152f483485b2c31c553bc8e2a6","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"069665152f483485b2c31c553bc8e2a6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.921645,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efcc94b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efcc94b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076818,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efccbbc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efccbbc0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.043258,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"069665152f483485b2c31c553bc8e2a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"069665152f483485b2c31c553bc8e2a6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.599307373Z"}]},"request_id":"75725b1b-3222-4fe7-9c9e-146e1062cdd5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9965854} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"efcc94b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"21d97c40-452b-4e20-af19-3fe60bbe63de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049668.9984124} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efccbbc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:06.646440848Z"}]},"request_id":"2c99034f-99b4-4314-98b0-ed453ce47ab2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.000285} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"069665152f483485b2c31c553bc8e2a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efcc94b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae? 200 14ms","method":"GET","requestID":"efcc94b0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efccbbc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? 200 16ms","method":"GET","requestID":"efccbbc0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"069665152f483485b2c31c553bc8e2a6"} device-1 | {"level":"info","message":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? 200 13ms","method":"GET","requestID":"069665152f483485b2c31c553bc8e2a6","responseTime":13,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Building connection plan","requestID":"d660fdb11f2f42bdd6e580db4205198d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0c1d16bb-12c5-4f70-9c67-79df94686454? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"069665152f483485b2c31c553bc8e2a6"} 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":"fc2909fc-12b2-4788-948e-2ad8fbe29773"},{"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":"9798e976-1321-4e9f-9494-7e0975dacff6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f9037843-390b-42ae-912b-02eb9a6f3b56"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d660fdb11f2f42bdd6e580db4205198d"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"efcf7ae0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"efcf7ae0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"efcf7ae0-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694?id=e4781f34-14c3-45b1-a4ab-fa072c07cda9","ws://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694?id=0734624c-2f92-4fa0-b731-346d8f6a194d"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.018365,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efd01720-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049668,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OH0.s8Z8Z6U5StFZYpwY0vuG0Oowyt6NqNcA5lf83evkcXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"efd01720-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"19fa1d21-6a49-4571-a506-94f7d3f1b24c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.0218763} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d67df9d1-d35d-4457-9e83-264ccfc9cfdb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.022128} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"efd01720-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96'","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96'","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"efd01720-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"efd01720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"efd56e50-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\"","requestID":"efd56e50-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"efd56e50-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d56083806d996d9428bcfde22209515a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"efd59560-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4781f34-14c3-45b1-a4ab-fa072c07cda9\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\"","requestID":"efd59560-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"efd59560-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d56083806d996d9428bcfde22209515a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"}}},"level":"info","message":"received a callback","requestID":"d56083806d996d9428bcfde22209515a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"d56083806d996d9428bcfde22209515a","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"d56083806d996d9428bcfde22209515a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d660fdb11f2f42bdd6e580db4205198d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efd8c9b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64694c75-b951-4299-a75f-90228ccfe5c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.0723686} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.65861,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efd8c9b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","rebac_allow":false,"scope_allow":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":"efd8c9b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efd8c9b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling 200 10ms","method":"POST","requestID":"efd8c9b0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efda9e70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c14f080b-91a0-474d-abcb-150908b9d1dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.0831754} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.832793,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efda9e70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efda9e70-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efda9e70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling 200 9ms","method":"POST","requestID":"efda9e70-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6d7d98e266426dc3c39ac47862e9e1b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a6d7d98e266426dc3c39ac47862e9e1b","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"}}},"level":"info","message":"received a callback","requestID":"a6d7d98e266426dc3c39ac47862e9e1b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"efdce860-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe66c8748-b20d-4336-af40-737c3cb9be96","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10b67f41-f383-4226-9c98-f4abadab179c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.0985842} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.363064,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efdce860-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efdce860-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"efdce860-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96 200 7ms","method":"GET","requestID":"efdce860-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"a6d7d98e266426dc3c39ac47862e9e1b","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6d7d98e266426dc3c39ac47862e9e1b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efe15530-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59f5e0f8-411f-4bdd-97be-d8f375303111","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.1277542} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.152304,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efe15530-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efe15530-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efe15530-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling 200 8ms","method":"POST","requestID":"efe15530-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efe2dbd0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc6e93ee-36ba-4c1e-b1a3-75736dca8074","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.1391726} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.42424,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efe2dbd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","rebac_allow":false,"scope_allow":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":"efe2dbd0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efe2dbd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling 200 11ms","method":"POST","requestID":"efe2dbd0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"b4082c069d4077f6aa0584810fd44574"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4082c069d4077f6aa0584810fd44574","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","requestID":"b4082c069d4077f6aa0584810fd44574"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.183343,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b4082c069d4077f6aa0584810fd44574","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b4082c069d4077f6aa0584810fd44574","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","requestID":"b4082c069d4077f6aa0584810fd44574"} experiment-1 | {"level":"info","message":"GET /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66 200 14ms","method":"GET","requestID":"b4082c069d4077f6aa0584810fd44574","responseTime":14,"status":200,"url":"/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4082c069d4077f6aa0584810fd44574"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"dcf202e53fe25df7a212611f9535060c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dcf202e53fe25df7a212611f9535060c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","requestID":"dcf202e53fe25df7a212611f9535060c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.269191,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dcf202e53fe25df7a212611f9535060c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dcf202e53fe25df7a212611f9535060c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Attempting to finish experiment","requestID":"dcf202e53fe25df7a212611f9535060c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"efec2aa0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.936546,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"efec2aa0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efec2aa0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/591edeb0-73a6-4278-af0c-6f7f797de694?id=0734624c-2f92-4fa0-b731-346d8f6a194d HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.167","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e210bdb7cf55b5e50ca5d35e06473604"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0734624c-2f92-4fa0-b731-346d8f6a194d\" from room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96","device":"53f6c554-18ff-4ae5-aec7-58da79fd40ae","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/e66c8748-b20d-4336-af40-737c3cb9be96' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/591edeb0-73a6-4278-af0c-6f7f797de694?id=e4781f34-14c3-45b1-a4ab-fa072c07cda9 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.168","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":"c70b6cb3199125be3c3d5c4bf506048d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"e4781f34-14c3-45b1-a4ab-fa072c07cda9\" in room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"e4781f34-14c3-45b1-a4ab-fa072c07cda9\" from room \"http://localhost/rooms/591edeb0-73a6-4278-af0c-6f7f797de694\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8af0537cd6cc5efe294693027b46b4a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8af0537cd6cc5efe294693027b46b4a4","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe66c8748-b20d-4336-af40-737c3cb9be96': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe66c8748-b20d-4336-af40-737c3cb9be96","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"68f49653-f4d1-48c8-9c58-b97047a7d2cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.218765} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"}}},"level":"info","message":"received a callback","requestID":"8af0537cd6cc5efe294693027b46b4a4"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2cab91a6f4b2084d9fa80a950b4f655f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2a04e00-6af2-4b52-b015-ba3a2439088e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.2194495} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2cab91a6f4b2084d9fa80a950b4f655f","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"efec2aa0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"}}},"level":"info","message":"received a callback","requestID":"2cab91a6f4b2084d9fa80a950b4f655f"} device-1 | {"data":{"peerconnection":"e66c8748-b20d-4336-af40-737c3cb9be96","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"efec2aa0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96 204 48ms","method":"DELETE","requestID":"efec2aa0-793e-11ef-9733-5750b05365a5","responseTime":48,"status":204,"url":"/peerconnections/e66c8748-b20d-4336-af40-737c3cb9be96"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"},"level":"info","message":"Successfully finished experiment","requestID":"dcf202e53fe25df7a212611f9535060c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eff6d900-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53f6c554-18ff-4ae5-aec7-58da79fd40ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e09b4d7-f65d-46a8-82ec-1965c185e60f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.271845} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.355174,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eff6d900-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae","object_type":"device","rebac_allow":false,"scope_allow":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":"eff6d900-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F279b8abe-c2cb-4ff6-b411-bb8a72f65e66': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F279b8abe-c2cb-4ff6-b411-bb8a72f65e66","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"2e0f2d2c-82c2-4065-8cde-3eac804b22be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.276618} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eff6d900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/signaling 200 13ms","method":"POST","requestID":"eff6d900-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f6f99a7-a726-47d3-80bd-72ecf2f769ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.2768915} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"dcf202e53fe25df7a212611f9535060c","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eff922f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0c1d16bb-12c5-4f70-9c67-79df94686454","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5daab737-6c8d-46bd-9596-ce1d32136445","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.284145} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.36509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eff922f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454","object_type":"device","rebac_allow":false,"scope_allow":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":"eff922f0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eff922f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling 200 10ms","method":"POST","requestID":"eff922f0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/0c1d16bb-12c5-4f70-9c67-79df94686454/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66","requestID":"dcf202e53fe25df7a212611f9535060c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcf202e53fe25df7a212611f9535060c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"2.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bbd9f57e629718de86cf61a1bc38a3d2"} experiment-1 | {"level":"info","message":"DELETE /experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66 204 164ms","method":"DELETE","requestID":"dcf202e53fe25df7a212611f9535060c","responseTime":164,"status":204,"url":"/experiments/279b8abe-c2cb-4ff6-b411-bb8a72f65e66"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"8af0537cd6cc5efe294693027b46b4a4","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"8af0537cd6cc5efe294693027b46b4a4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"2cab91a6f4b2084d9fa80a950b4f655f","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"2cab91a6f4b2084d9fa80a950b4f655f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.692","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":"f4dfa5717026244b0f28efd7ebbf79c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"2fe4c8c95a473b7830198add42ac6427"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2fe4c8c95a473b7830198add42ac6427"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0c1d16bb-12c5-4f70-9c67-79df94686454' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.857845,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2fe4c8c95a473b7830198add42ac6427","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/53f6c554-18ff-4ae5-aec7-58da79fd40ae' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fc688d90-031d-41a1-95f8-73348c560e7f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.3749704} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c1def2b-f486-4359-bac6-1b4b228c520a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.3793097} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a1511fff-973c-4bcf-aa54-882203fba744","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.3883011} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86c039e7-45e2-4ad1-843d-f49e04d187cf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.388614} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"55cd27dc-8baf-45d5-8b73-a849f45e8690","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.392171} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2fe4c8c95a473b7830198add42ac6427"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fe4c8c95a473b7830198add42ac6427"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"2fe4c8c95a473b7830198add42ac6427","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"324c6259a27aac3ce21e4978ec9306f2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"324c6259a27aac3ce21e4978ec9306f2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"324c6259a27aac3ce21e4978ec9306f2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.722802,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"324c6259a27aac3ce21e4978ec9306f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"58b70b18-6ca6-44a5-a009-5982b9dad87d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.4200826} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d205cdaa-8c21-439f-9390-f17d12ba3aec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.4242954} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"36e05f0e-804c-4db8-bbef-f6bcad225a27","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.4349277} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e019313-a93a-4c5c-9a3b-aa6a677cb401","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.4350662} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"0f94a5ef-05a6-4114-a7ef-e091d8a7327e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.438528} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"324c6259a27aac3ce21e4978ec9306f2"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"324c6259a27aac3ce21e4978ec9306f2"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"324c6259a27aac3ce21e4978ec9306f2","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"e8d3240156abbe18b29c8af8f00b9ecc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e8d3240156abbe18b29c8af8f00b9ecc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106492,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e8d3240156abbe18b29c8af8f00b9ecc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"3cf088e9-02d3-4699-bd87-7cde8b1f014f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.9209828} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"014fabe4-1f5f-4725-b9f8-4d44fb879f40","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.9265106} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"babb0557-235a-4657-8b24-cd61d4bee99a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049669.9402304} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e8d3240156abbe18b29c8af8f00b9ecc"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/906b3007-febe-485e-b174-c0dc6a959d9a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e8d3240156abbe18b29c8af8f00b9ecc"} device-1 | {"level":"info","message":"PATCH /devices/906b3007-febe-485e-b174-c0dc6a959d9a 200 32ms","method":"PATCH","requestID":"e8d3240156abbe18b29c8af8f00b9ecc","responseTime":32,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk","level":"info","message":"auth send jwt","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049669,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY2OX0.kuNSLbzl4DjgDBE7uWHesOxIpLizjPKRBM9d1e4Ixbk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/websocket 200 17ms","method":"POST","requestID":"1a2fb7f7ca104b5c5e1d1bbea245be5a","responseTime":17,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"809cbf8658abbb89529e1a54aa4a91ab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"809cbf8658abbb89529e1a54aa4a91ab","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/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":"809cbf8658abbb89529e1a54aa4a91ab"} device-1 | {"level":"info","message":"OPTIONS /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/websocket 200 1ms","method":"OPTIONS","requestID":"809cbf8658abbb89529e1a54aa4a91ab","responseTime":1,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"5364286d6ca26b6aea10b70643056bc1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5364286d6ca26b6aea10b70643056bc1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5364286d6ca26b6aea10b70643056bc1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340637,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5364286d6ca26b6aea10b70643056bc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5364286d6ca26b6aea10b70643056bc1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5364286d6ca26b6aea10b70643056bc1"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5364286d6ca26b6aea10b70643056bc1"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/websocket 200 22ms","method":"POST","requestID":"5364286d6ca26b6aea10b70643056bc1","responseTime":22,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c03a4eccf9c5649dd0e845a57fdbdc3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c03a4eccf9c5649dd0e845a57fdbdc3e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"c03a4eccf9c5649dd0e845a57fdbdc3e"} device-1 | {"level":"info","message":"OPTIONS /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 1ms","method":"OPTIONS","requestID":"c03a4eccf9c5649dd0e845a57fdbdc3e","responseTime":1,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"b3bf85dd6f10eb03ad57027f35f4af54"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b3bf85dd6f10eb03ad57027f35f4af54"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113713,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3bf85dd6f10eb03ad57027f35f4af54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"07205243-cfc4-4f2f-b28c-f8c41385b0e8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.5436954} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"574a69ad-1999-4020-b9b0-3a489bbb3e51","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.5523732} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"d6f97bc5-cbc8-4331-9f7f-6966d4195d39","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.564423} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b3bf85dd6f10eb03ad57027f35f4af54"} device-1 | {"level":"info","message":"PATCH /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 37ms","method":"PATCH","requestID":"b3bf85dd6f10eb03ad57027f35f4af54","responseTime":37,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"b3bf85dd6f10eb03ad57027f35f4af54"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"84db52a71813fe7ded516130b5fdbb68"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84db52a71813fe7ded516130b5fdbb68","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84db52a71813fe7ded516130b5fdbb68"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.337963,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"84db52a71813fe7ded516130b5fdbb68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84db52a71813fe7ded516130b5fdbb68","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"75809b7f-0fda-4f01-8d30-3a604efdd3fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.5942085} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"84db52a71813fe7ded516130b5fdbb68","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84db52a71813fe7ded516130b5fdbb68"} device-1 | {"level":"info","message":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? 200 16ms","method":"GET","requestID":"84db52a71813fe7ded516130b5fdbb68","responseTime":16,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84db52a71813fe7ded516130b5fdbb68"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"1788382f8a73c5f610f2a600cd2404d5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1788382f8a73c5f610f2a600cd2404d5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1788382f8a73c5f610f2a600cd2404d5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211115,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1788382f8a73c5f610f2a600cd2404d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1788382f8a73c5f610f2a600cd2404d5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"4c5dada7-0a59-472f-84b8-e03bc3e23d34","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.6194556} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1788382f8a73c5f610f2a600cd2404d5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1788382f8a73c5f610f2a600cd2404d5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1788382f8a73c5f610f2a600cd2404d5"} device-1 | {"level":"info","message":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 16ms","method":"GET","requestID":"1788382f8a73c5f610f2a600cd2404d5","responseTime":16,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"14ca70253f3c4a82432d044093d3fe8e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"14ca70253f3c4a82432d044093d3fe8e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"14ca70253f3c4a82432d044093d3fe8e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.758596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14ca70253f3c4a82432d044093d3fe8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14ca70253f3c4a82432d044093d3fe8e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to run experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to book experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully booked experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1658430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f165d250-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.098926,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1658430-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1658430-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190972,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f165d250-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f165d250-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"35b20bd7-82b6-49d3-bde9-b887d6b9d5e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.6798425} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f1658430-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"c8531d12-9e4b-478d-a52b-a65171e765e5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.6810975} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f165d250-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1658430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? 200 20ms","method":"GET","requestID":"f1658430-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f165d250-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 20ms","method":"GET","requestID":"f165d250-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Setting up experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully locked booking for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to update booking for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully updated booking for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully set up experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1711cf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1714400-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully running experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f171b930-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745953,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1711cf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f1711cf0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1714400-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f1714400-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.969216,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a51806c9-88f9-4b5b-b86e-2ebe86dda9a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7585044} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"bfad5e3b-fe8a-48b4-868c-ae5bc1ffdf32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.758492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1711cf0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"3e91bd3e-37cb-4061-9f03-7dce5565e01e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7596242} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f171b930-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f171b930-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f1714400-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1711cf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? 200 25ms","method":"GET","requestID":"f1711cf0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f171b930-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling 200 22ms","method":"POST","requestID":"f171b930-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1714400-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 26ms","method":"GET","requestID":"f1714400-793e-11ef-9733-5750b05365a5","responseTime":26,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff58080e2-6cc7-433a-9b12-dc6f387efecd#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff58080e2-6cc7-433a-9b12-dc6f387efecd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7c9c4da5-d740-4c19-a7bd-0ed77c69f0c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7718382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43fc4fd1-9512-4364-9e13-687d97b97a65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7720854} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f17589c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f175b0d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"14ca70253f3c4a82432d044093d3fe8e","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7441653d-743e-435d-a772-a6886cb66866","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7788198} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.900359,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f17589c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","rebac_allow":false,"scope_allow":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":"f17589c0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd5e13ba-f36d-4c0e-a46d-3e1b32a2a4e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7802505} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"14ca70253f3c4a82432d044093d3fe8e"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.03839,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f175b0d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","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 149ms","method":"POST","requestID":"14ca70253f3c4a82432d044093d3fe8e","responseTime":149,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14ca70253f3c4a82432d044093d3fe8e"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f175b0d0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f17589c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling 200 12ms","method":"POST","requestID":"f17589c0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f175b0d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling 200 12ms","method":"POST","requestID":"f175b0d0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"e938172a5d8d2c253a6590f5c426c480"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e938172a5d8d2c253a6590f5c426c480","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e938172a5d8d2c253a6590f5c426c480"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f177fac0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908715,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e938172a5d8d2c253a6590f5c426c480","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e938172a5d8d2c253a6590f5c426c480","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fa20f4e-33fd-401c-b3c5-2cbe9ad12c5e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.7927656} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.763558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f177fac0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","rebac_allow":false,"scope_allow":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":"f177fac0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"b2f8e8b2-bc7f-40c5-b1e8-c385eab7f689","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.795456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e938172a5d8d2c253a6590f5c426c480","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f177fac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling 200 12ms","method":"POST","requestID":"f177fac0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e938172a5d8d2c253a6590f5c426c480"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e938172a5d8d2c253a6590f5c426c480"} device-1 | {"level":"info","message":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? 200 14ms","method":"GET","requestID":"e938172a5d8d2c253a6590f5c426c480","responseTime":14,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f179f690-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f17a1da0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"77187c0627d368181fefdc0292820c37"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"77187c0627d368181fefdc0292820c37","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.949351,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77187c0627d368181fefdc0292820c37"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f179f690-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f179f690-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631434,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f17a1da0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f17a1da0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710692,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"77187c0627d368181fefdc0292820c37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77187c0627d368181fefdc0292820c37","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.388276028Z"}]},"request_id":"d5331dcf-f3cb-4562-afbf-c5d402dfa881","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.8105016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"77f517db-f4e7-49ca-9fd9-fc73d819ba72","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.8111916} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f179f690-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f17a1da0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:09.434900624Z"}]},"request_id":"d0f8abd4-5817-4058-b4e9-f6ec5c21e546","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.8155553} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f179f690-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/906b3007-febe-485e-b174-c0dc6a959d9a? 200 19ms","method":"GET","requestID":"f179f690-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"77187c0627d368181fefdc0292820c37","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f17a1da0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 19ms","method":"GET","requestID":"f17a1da0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Building connection plan","requestID":"14ca70253f3c4a82432d044093d3fe8e"} 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":"9d6793eb-b37f-45fd-adc4-785f9e2686bb"},{"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":"a46c8f9f-586b-46dc-9913-391f5f0c213f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"13071f64-1cc3-4ecb-b325-18e18132e4d7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"14ca70253f3c4a82432d044093d3fe8e"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f17d7900-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f17d7900-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f17d7900-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29?id=f5d9ad77-84d1-4520-aaf9-e6bcfad84ccb","ws://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29?id=73dd45c8-058c-4818-bb86-9d6d08bd3eaa"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"14ca70253f3c4a82432d044093d3fe8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77187c0627d368181fefdc0292820c37"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77187c0627d368181fefdc0292820c37"} device-1 | {"level":"info","message":"GET /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0? 200 22ms","method":"GET","requestID":"77187c0627d368181fefdc0292820c37","responseTime":22,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.874902,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f17e1540-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f17e1540-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"64e904b8-2370-4c49-ba16-64dbea073670","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.842269} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a908fdfe-f4d8-47fd-92ff-5ec103aac429","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.8425639} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f17e1540-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee'","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee'","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 29ms","method":"POST","requestID":"f17e1540-793e-11ef-9733-5750b05365a5","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f17e1540-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f183e1a0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f5d9ad77-84d1-4520-aaf9-e6bcfad84ccb\" in room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\"","requestID":"f183e1a0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f183e1a0-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"417b0b6bb552c9ec8a2007cf7f83e964","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"417b0b6bb552c9ec8a2007cf7f83e964","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f18456d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73dd45c8-058c-4818-bb86-9d6d08bd3eaa\" in room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\"","requestID":"f18456d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f18456d0-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73dd45c8-058c-4818-bb86-9d6d08bd3eaa\" in room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\"","requestID":"f18456d0-793e-11ef-a51e-0dff660adfff"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"}}},"level":"info","message":"received a callback","requestID":"417b0b6bb552c9ec8a2007cf7f83e964"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"417b0b6bb552c9ec8a2007cf7f83e964","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"417b0b6bb552c9ec8a2007cf7f83e964"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"14ca70253f3c4a82432d044093d3fe8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1889c90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ab569b5-910c-4615-b842-14799ec17a04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.9011042} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.281133,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1889c90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1889c90-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1889c90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling 200 10ms","method":"POST","requestID":"f1889c90-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d39c422c728f33245a4603970466179a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d39c422c728f33245a4603970466179a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f18a4a40-793e-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"}}},"level":"info","message":"received a callback","requestID":"d39c422c728f33245a4603970466179a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c98327e6-10e2-4299-893e-f78163108362","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.9127192} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f18b34a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.405672,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f18a4a40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","rebac_allow":false,"scope_allow":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":"f18a4a40-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f18a4a40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling 200 10ms","method":"POST","requestID":"f18a4a40-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd6319022-2d27-4df7-8e2f-9651f72321ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"feeb7051-a2fa-4735-9771-ea5611e01f78","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.9197276} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.319159,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f18b34a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f18b34a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f18b34a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee 200 9ms","method":"GET","requestID":"f18b34a0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"d39c422c728f33245a4603970466179a","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"d39c422c728f33245a4603970466179a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f18ede20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a3a6916-ff20-4796-8f4b-9dd754f25972","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.9422593} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.266996,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f18ede20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f18ede20-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f18ede20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling 200 7ms","method":"POST","requestID":"f18ede20-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1903db0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15e438a8-db97-4399-a1e6-efa49ee62017","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049671.9510343} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.148505,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1903db0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1903db0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1903db0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling 200 7ms","method":"POST","requestID":"f1903db0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.262903,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"74c89b6cf2bf25debacfa6e8c948ecf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0"} experiment-1 | {"level":"info","message":"GET /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd 200 17ms","method":"GET","requestID":"74c89b6cf2bf25debacfa6e8c948ecf0","responseTime":17,"status":200,"url":"/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg","level":"info","message":"auth send jwt","requestID":"82a014de787a81a4f96deca81f16995e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82a014de787a81a4f96deca81f16995e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","requestID":"82a014de787a81a4f96deca81f16995e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.930671,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"82a014de787a81a4f96deca81f16995e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"82a014de787a81a4f96deca81f16995e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Attempting to finish experiment","requestID":"82a014de787a81a4f96deca81f16995e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f19a9df0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.996115,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f19a9df0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049671,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3MX0.Spa8D6E80QCZf6GHg97HpsQRf0wLAqNaVv1T796UZjg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f19a9df0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29?id=f5d9ad77-84d1-4520-aaf9-e6bcfad84ccb HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ba2d00bcca439fa2cf756760546517b7"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f5d9ad77-84d1-4520-aaf9-e6bcfad84ccb\" in room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f5d9ad77-84d1-4520-aaf9-e6bcfad84ccb\" from room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\""} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29?id=73dd45c8-058c-4818-bb86-9d6d08bd3eaa HTTP/1.1","status": "101","body_bytes_sent":"460","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":"30c6018dc2bbd1a5ac0ea6f1fc3140fc"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee","device":"dbc23ec8-0351-4e58-abfd-79172e2086a0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"73dd45c8-058c-4818-bb86-9d6d08bd3eaa\" in room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"73dd45c8-058c-4818-bb86-9d6d08bd3eaa\" from room \"http://localhost/rooms/106457bd-08af-4db7-a4c0-f177c2c1ad29\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae5503c707537caeffe795b89f450608","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ae5503c707537caeffe795b89f450608","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"08d209f5401a4da6676de06fa09d43c9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"08d209f5401a4da6676de06fa09d43c9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"}}},"level":"info","message":"received a callback","requestID":"ae5503c707537caeffe795b89f450608"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd6319022-2d27-4df7-8e2f-9651f72321ee': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd6319022-2d27-4df7-8e2f-9651f72321ee","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"fb12c498-7e04-44a8-b4cd-af052fbfa419","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.0354202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5e761d1-f68b-4cad-bc96-8a408bfa84b7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.0356398} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"}}},"level":"info","message":"received a callback","requestID":"08d209f5401a4da6676de06fa09d43c9"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f19a9df0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d6319022-2d27-4df7-8e2f-9651f72321ee","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f19a9df0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee 204 39ms","method":"DELETE","requestID":"f19a9df0-793e-11ef-9733-5750b05365a5","responseTime":39,"status":204,"url":"/peerconnections/d6319022-2d27-4df7-8e2f-9651f72321ee"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"},"level":"info","message":"Successfully finished experiment","requestID":"82a014de787a81a4f96deca81f16995e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1a32970-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F906b3007-febe-485e-b174-c0dc6a959d9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fdaf9bb-3e12-4965-94fd-7d18baadf20b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.0772672} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.87017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1a32970-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f1a32970-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1a32970-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling 200 12ms","method":"POST","requestID":"f1a32970-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/906b3007-febe-485e-b174-c0dc6a959d9a/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff58080e2-6cc7-433a-9b12-dc6f387efecd': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff58080e2-6cc7-433a-9b12-dc6f387efecd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"17584759-d1d3-4fde-8b23-57ab5abf58a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.0850441} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1a54c50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ff761c8-d01d-471c-9dc5-525fc6eed027","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.085361} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"82a014de787a81a4f96deca81f16995e","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdbc23ec8-0351-4e58-abfd-79172e2086a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e9d2ec5-c4d1-42ad-8804-6d4c4b4730d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.0903935} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.15236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f1a54c50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0","object_type":"device","rebac_allow":false,"scope_allow":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":"f1a54c50-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1a54c50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling 200 9ms","method":"POST","requestID":"f1a54c50-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd","requestID":"82a014de787a81a4f96deca81f16995e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82a014de787a81a4f96deca81f16995e"} experiment-1 | {"level":"info","message":"DELETE /experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd 204 155ms","method":"DELETE","requestID":"82a014de787a81a4f96deca81f16995e","responseTime":155,"status":204,"url":"/experiments/f58080e2-6cc7-433a-9b12-dc6f387efecd"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"2.187","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"61fe431fe2138c6c6dbe3aaae34874e1"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae5503c707537caeffe795b89f450608"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"ae5503c707537caeffe795b89f450608","responseTime":123,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"08d209f5401a4da6676de06fa09d43c9","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"08d209f5401a4da6676de06fa09d43c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U","level":"info","message":"auth send jwt","requestID":"43651054ae2ebc5e6485a2199d3e4187"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"43651054ae2ebc5e6485a2199d3e4187"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.88695,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"43651054ae2ebc5e6485a2199d3e4187","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049672,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.682","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":"2fd819b1b7109eb797f52a370e7b39c7"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/906b3007-febe-485e-b174-c0dc6a959d9a' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b13e93cc-e01a-4e32-9386-93a416fa77b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.1805487} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dbc23ec8-0351-4e58-abfd-79172e2086a0' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f53466c8-fa53-4530-a356-d5226a562e4c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.1854646} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a5bfbde2-98dd-40eb-9c51-177ab4a0cfdf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2007782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"416d9044-e700-4368-b67e-ab1d20d4faba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.200885} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"6b65fefd-510c-4671-bdfa-f2329a1143f2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2052717} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"43651054ae2ebc5e6485a2199d3e4187"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"43651054ae2ebc5e6485a2199d3e4187","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43651054ae2ebc5e6485a2199d3e4187"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U","level":"info","message":"auth send jwt","requestID":"92d94ce594e1a0e32fb30c974582d850"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"92d94ce594e1a0e32fb30c974582d850"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.014434,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"92d94ce594e1a0e32fb30c974582d850","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049672,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c6f6fe7b-494f-431d-8537-826209db1993","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2279565} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e3d710b-c639-4f59-bd4f-1a7bd404e8ee","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2320404} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c2d38094-d82c-47eb-a588-099fc602337a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2428997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4564d4d3-70fc-430b-977c-a72aa5396691","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.2430408} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"80d02146-8568-495d-947a-b54637130dac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.247003} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"92d94ce594e1a0e32fb30c974582d850"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"92d94ce594e1a0e32fb30c974582d850","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92d94ce594e1a0e32fb30c974582d850"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U","level":"info","message":"auth send jwt","requestID":"2445cc8010ba210575bea961c61df9f9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2445cc8010ba210575bea961c61df9f9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2445cc8010ba210575bea961c61df9f9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956992,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2445cc8010ba210575bea961c61df9f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049672,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2445cc8010ba210575bea961c61df9f9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"941a9477-cf8e-4e2f-9481-760060bb014f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.726887} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2445cc8010ba210575bea961c61df9f9","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57d1ddda-3535-4c05-817e-6b489fcf4baf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.7323544} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2445cc8010ba210575bea961c61df9f9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"7b336f48-f00e-4f64-af05-c11c2f2b58d2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049672.743806} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2445cc8010ba210575bea961c61df9f9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2445cc8010ba210575bea961c61df9f9"} device-1 | {"level":"info","message":"PATCH /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8 200 29ms","method":"PATCH","requestID":"2445cc8010ba210575bea961c61df9f9","responseTime":29,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2445cc8010ba210575bea961c61df9f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U","level":"info","message":"auth send jwt","requestID":"f3c17dfd317235d82186ce02f968c11a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f3c17dfd317235d82186ce02f968c11a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f3c17dfd317235d82186ce02f968c11a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.146044,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3c17dfd317235d82186ce02f968c11a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049672,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Mn0.yeW6FpFfy3_RcXJYMCxUkg8ZHw1OlrOS0LIC1VDNx7U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3c17dfd317235d82186ce02f968c11a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f3c17dfd317235d82186ce02f968c11a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f3c17dfd317235d82186ce02f968c11a"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/websocket 200 21ms","method":"POST","requestID":"f3c17dfd317235d82186ce02f968c11a","responseTime":21,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f91e5dcbb7bb009d511d1a82db51d87","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5f91e5dcbb7bb009d511d1a82db51d87","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/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":"5f91e5dcbb7bb009d511d1a82db51d87"} device-1 | {"level":"info","message":"OPTIONS /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/websocket 200 1ms","method":"OPTIONS","requestID":"5f91e5dcbb7bb009d511d1a82db51d87","responseTime":1,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"f7178dcb5336946d43385275b7559539"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f7178dcb5336946d43385275b7559539","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f7178dcb5336946d43385275b7559539"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192551,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7178dcb5336946d43385275b7559539","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7178dcb5336946d43385275b7559539","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f7178dcb5336946d43385275b7559539"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/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":"f7178dcb5336946d43385275b7559539"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/websocket 200 22ms","method":"POST","requestID":"f7178dcb5336946d43385275b7559539","responseTime":22,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae6cda01c1a9adef3cb83df9917c6dd8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ae6cda01c1a9adef3cb83df9917c6dd8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ae6cda01c1a9adef3cb83df9917c6dd8"} device-1 | {"level":"info","message":"OPTIONS /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 1ms","method":"OPTIONS","requestID":"ae6cda01c1a9adef3cb83df9917c6dd8","responseTime":1,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"0b4552e43fd5397cd7e575efd2773c79"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0b4552e43fd5397cd7e575efd2773c79","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0b4552e43fd5397cd7e575efd2773c79"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248505,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b4552e43fd5397cd7e575efd2773c79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b4552e43fd5397cd7e575efd2773c79","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"8d1838af-e1db-4837-9472-956cd1b27089","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.3674505} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b4552e43fd5397cd7e575efd2773c79","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71bde384-19c5-47c5-b95c-4fa17b8a8d67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.3738713} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0b4552e43fd5397cd7e575efd2773c79","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"fee2858e-58ce-4d1f-bbbc-a51f9489728a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.3882687} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b4552e43fd5397cd7e575efd2773c79","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0b4552e43fd5397cd7e575efd2773c79"} device-1 | {"level":"info","message":"PATCH /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 37ms","method":"PATCH","requestID":"0b4552e43fd5397cd7e575efd2773c79","responseTime":37,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b4552e43fd5397cd7e575efd2773c79"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"434100d1778dc3d89454f1d8b3ff6306"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"434100d1778dc3d89454f1d8b3ff6306","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"434100d1778dc3d89454f1d8b3ff6306"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296352,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"434100d1778dc3d89454f1d8b3ff6306","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"434100d1778dc3d89454f1d8b3ff6306","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"c1c67bdd-16ce-432f-a53a-e351cf2571bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.4167824} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"434100d1778dc3d89454f1d8b3ff6306","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"434100d1778dc3d89454f1d8b3ff6306"} device-1 | {"level":"info","message":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? 200 16ms","method":"GET","requestID":"434100d1778dc3d89454f1d8b3ff6306","responseTime":16,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"434100d1778dc3d89454f1d8b3ff6306"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"5fc8c571fa659fea87b338219bafc73b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5fc8c571fa659fea87b338219bafc73b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5fc8c571fa659fea87b338219bafc73b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182458,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5fc8c571fa659fea87b338219bafc73b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5fc8c571fa659fea87b338219bafc73b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"158c22b2-261f-471c-a244-499961e2a130","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.4406347} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fc8c571fa659fea87b338219bafc73b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5fc8c571fa659fea87b338219bafc73b"} device-1 | {"level":"info","message":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 18ms","method":"GET","requestID":"5fc8c571fa659fea87b338219bafc73b","responseTime":18,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5fc8c571fa659fea87b338219bafc73b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"212174ea0d9bad16dc3ad78165465ee6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"212174ea0d9bad16dc3ad78165465ee6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"212174ea0d9bad16dc3ad78165465ee6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.897146,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"212174ea0d9bad16dc3ad78165465ee6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"212174ea0d9bad16dc3ad78165465ee6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to run experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to book experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully booked experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f31445a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3146cb0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776826,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f31445a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f31445a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836316,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3146cb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3146cb0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"6eec12c4-42e0-44dc-be43-2e374c880a56","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.4986706} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f31445a0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"f00cd747-ed9e-4677-8b34-fe7a4d8197b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.4998174} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3146cb0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f31445a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? 200 14ms","method":"GET","requestID":"f31445a0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3146cb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 14ms","method":"GET","requestID":"f3146cb0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Setting up experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully locked booking for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to update booking for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully updated booking for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully set up experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f31d9470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f31dbb80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f31de290-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully running experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f31d9470-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f31d9470-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.05297,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f31dbb80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f31dbb80-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"26981d75-7895-410c-86f4-a50c088884f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5633795} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f31d9470-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"b837c297-df7e-4e9b-8439-19f4673a8741","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5653782} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f31dbb80-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38452","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1d5af5b-b737-4736-a4b2-48d56dd371de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5702016} authorization-1 | {"client_addr":"127.0.0.1:38452","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.749605,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f31d9470-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f31de290-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? 200 22ms","method":"GET","requestID":"f31d9470-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8?"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"f31de290-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f31dbb80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 24ms","method":"GET","requestID":"f31dbb80-793e-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f31de290-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling 200 25ms","method":"POST","requestID":"f31de290-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3ae24fec-18e4-4fe5-9400-4548610e6899#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3ae24fec-18e4-4fe5-9400-4548610e6899","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"01c521d0-a972-421f-8cce-24b1cef87c27","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5797274} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f321da30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a7567b5-9068-466d-bab8-11b0178d2bf7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.580657} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3224f60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"212174ea0d9bad16dc3ad78165465ee6","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"650dcbed-8a78-4f08-9584-dc9e4796d89c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5888765} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.926476,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f321da30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","rebac_allow":false,"scope_allow":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":"f321da30-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d12e482e-9a68-4322-8a89-5806714b1835","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.5902202} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.482207,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3224f60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","rebac_allow":false,"scope_allow":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":"f3224f60-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"212174ea0d9bad16dc3ad78165465ee6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"212174ea0d9bad16dc3ad78165465ee6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"212174ea0d9bad16dc3ad78165465ee6","responseTime":139,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f321da30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling 200 18ms","method":"POST","requestID":"f321da30-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3224f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling 200 17ms","method":"POST","requestID":"f3224f60-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f324e770-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"c1a8186d5c791777ded10db65ce6ec69"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c1a8186d5c791777ded10db65ce6ec69","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1a8186d5c791777ded10db65ce6ec69"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56a97b92-9205-4637-994a-8f7dc93dc183","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6045575} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.684478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f324e770-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f324e770-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c1a8186d5c791777ded10db65ce6ec69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1a8186d5c791777ded10db65ce6ec69","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f324e770-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling 200 11ms","method":"POST","requestID":"f324e770-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"b07140fb-e681-4ef9-9982-b7f568bc48f2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6112761} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c1a8186d5c791777ded10db65ce6ec69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3270a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3273160-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1a8186d5c791777ded10db65ce6ec69"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764188,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1a8186d5c791777ded10db65ce6ec69"} device-1 | {"level":"info","message":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? 200 15ms","method":"GET","requestID":"c1a8186d5c791777ded10db65ce6ec69","responseTime":15,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3270a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3270a50-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.853872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3273160-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3273160-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"f9c310d968d62bfdc621093e805c4119"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.200748088Z"}]},"request_id":"4107b6eb-6e12-416d-bed1-943e951bff39","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6214757} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f9c310d968d62bfdc621093e805c4119","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f3270a50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"6d8d06fd-62b8-45f8-bc68-bed462d10342","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6224113} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9c310d968d62bfdc621093e805c4119"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f3273160-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.057434,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f9c310d968d62bfdc621093e805c4119","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f9c310d968d62bfdc621093e805c4119","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3270a50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8? 200 16ms","method":"GET","requestID":"f3270a50-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3273160-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 16ms","method":"GET","requestID":"f3273160-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:12.242871655Z"}]},"request_id":"b0d080c8-b827-4c79-a222-7cc188b0184c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.630667} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Building connection plan","requestID":"212174ea0d9bad16dc3ad78165465ee6"} 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":"1379cf2c-d5a7-42f0-8c28-8802b8df06f8"},{"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":"550e8b4b-2f69-44dd-8f36-803b96a1001b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ca6f645a-fbcd-4157-9402-929e19087458"}]},"level":"info","message":"Built pairwise service configurations","requestID":"212174ea0d9bad16dc3ad78165465ee6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f9c310d968d62bfdc621093e805c4119","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f32a1790-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f32a1790-793e-11ef-a51e-0dff660adfff"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9c310d968d62bfdc621093e805c4119"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f32a1790-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9c310d968d62bfdc621093e805c4119"} device-1 | {"level":"info","message":"GET /devices/42858d87-f3f0-46bd-afe7-c6a21207b761? 200 11ms","method":"GET","requestID":"f9c310d968d62bfdc621093e805c4119","responseTime":11,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a?id=e106f6c9-345d-4155-830c-d5a05b400952","ws://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a?id=88d4034e-e11e-4974-a919-b3d2e64d466c"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"212174ea0d9bad16dc3ad78165465ee6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.989791,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"30ab7467-ca16-4c60-8d87-6704d5c69d86","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6487277} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"764ff8e1-b877-4b14-b00c-6ace0b73f809","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.6490114} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988'","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988'","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f32ab3d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f3300b00-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e106f6c9-345d-4155-830c-d5a05b400952\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\"","requestID":"f3300b00-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f3300b00-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdefe26684ab9e990b6fcbf56f6c2dd1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cdefe26684ab9e990b6fcbf56f6c2dd1","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f3305920-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\"","requestID":"f3305920-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f3305920-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\"","requestID":"f3305920-793e-11ef-a51e-0dff660adfff"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"}}},"level":"info","message":"received a callback","requestID":"cdefe26684ab9e990b6fcbf56f6c2dd1"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"cdefe26684ab9e990b6fcbf56f6c2dd1","responseTime":17,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch","requestID":"cdefe26684ab9e990b6fcbf56f6c2dd1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"212174ea0d9bad16dc3ad78165465ee6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f335b050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f3db5d4e56fd7d37e6e62e684f59f4c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8ac350a-8546-4b19-a17c-b90b8592691f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.712615} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f3db5d4e56fd7d37e6e62e684f59f4c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.432887,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f335b050-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f335b050-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"}}},"level":"info","message":"received a callback","requestID":"0f3db5d4e56fd7d37e6e62e684f59f4c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f33736f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f335b050-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling 200 13ms","method":"POST","requestID":"f335b050-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc0660d-8a8b-4a81-95ee-e9c74c982988","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d100bc61-2675-4b0f-afd0-6994dd3ffa3f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.72426} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.73517,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3382150-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f33736f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f33736f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f33736f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988 200 9ms","method":"GET","requestID":"f33736f0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d377c25c-5694-4ff3-9cdd-662e1181d41b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.7297769} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.357704,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3382150-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3382150-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3382150-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling 200 9ms","method":"POST","requestID":"f3382150-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"0f3db5d4e56fd7d37e6e62e684f59f4c","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f3db5d4e56fd7d37e6e62e684f59f4c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f33b55a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3105d928-2a69-4e81-a74c-e1dbb2483fc9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.751559} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.071159,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f33b55a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f33b55a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f33b55a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling 200 9ms","method":"POST","requestID":"f33b55a0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f33d0350-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"658e04a0-72e3-42fa-a898-cfbb64274775","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.7614257} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.502397,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f33d0350-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f33d0350-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f33d0350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling 200 8ms","method":"POST","requestID":"f33d0350-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"48f319b37e049308d152ef889cbc8d01"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48f319b37e049308d152ef889cbc8d01","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","requestID":"48f319b37e049308d152ef889cbc8d01"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.641355,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"48f319b37e049308d152ef889cbc8d01","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"48f319b37e049308d152ef889cbc8d01","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","requestID":"48f319b37e049308d152ef889cbc8d01"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48f319b37e049308d152ef889cbc8d01"} experiment-1 | {"level":"info","message":"GET /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899 200 9ms","method":"GET","requestID":"48f319b37e049308d152ef889cbc8d01","responseTime":9,"status":200,"url":"/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"57d5b6d2887d5756dced9e424e90a2f6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667036,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"57d5b6d2887d5756dced9e424e90a2f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57d5b6d2887d5756dced9e424e90a2f6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Attempting to finish experiment","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f344a470-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.673045,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f344a470-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f344a470-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/db4e4dde-fe0c-465b-b87d-66963879132a?id=e106f6c9-345d-4155-830c-d5a05b400952 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"34d3cf46f0081d9769f9c4660ea0e76b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"e106f6c9-345d-4155-830c-d5a05b400952\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"e106f6c9-345d-4155-830c-d5a05b400952\" from room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988","device":"42858d87-f3f0-46bd-afe7-c6a21207b761","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/db4e4dde-fe0c-465b-b87d-66963879132a?id=88d4034e-e11e-4974-a919-b3d2e64d466c HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.153","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":"f8952eec447ef9a0c9313abf05f6c3b7"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" in room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"88d4034e-e11e-4974-a919-b3d2e64d466c\" from room \"http://localhost/rooms/db4e4dde-fe0c-465b-b87d-66963879132a\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"623d68a40c6abe18c677e3cf73369df2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"623d68a40c6abe18c677e3cf73369df2","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc0660d-8a8b-4a81-95ee-e9c74c982988': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc0660d-8a8b-4a81-95ee-e9c74c982988","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"c9e8760c-bd21-40bb-9451-bab34aff0257","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.8294275} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa0827e4-3332-4b3c-ac9d-d0f4931925fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.829656} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"191fae68e19b961e5b48eadea0be6856","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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-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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"}}},"level":"info","message":"received a callback","requestID":"623d68a40c6abe18c677e3cf73369df2"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"191fae68e19b961e5b48eadea0be6856","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f344a470-793e-11ef-9733-5750b05365a5","responseTime":7,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"}}},"level":"info","message":"received a callback","requestID":"191fae68e19b961e5b48eadea0be6856"} device-1 | {"data":{"peerconnection":"8fc0660d-8a8b-4a81-95ee-e9c74c982988","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f344a470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988 204 41ms","method":"DELETE","requestID":"f344a470-793e-11ef-9733-5750b05365a5","responseTime":41,"status":204,"url":"/peerconnections/8fc0660d-8a8b-4a81-95ee-e9c74c982988"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"},"level":"info","message":"Successfully finished experiment","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f34dcc30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F81a283e9-17ac-4b2f-865d-20d7bea08fe8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66ef0c01-7491-42b0-bf8a-ccb926a5d725","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.8713987} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.301323,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f34dcc30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f34dcc30-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f34dcc30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling 200 8ms","method":"POST","requestID":"f34dcc30-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f34f52d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3ae24fec-18e4-4fe5-9400-4548610e6899': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3ae24fec-18e4-4fe5-9400-4548610e6899","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ec20a55c-109e-4e36-b9fb-1138c4f8f094","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.8779914} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6656ff0d-4551-4cf2-b5c6-cfba83fb4ef3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.878392} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"57d5b6d2887d5756dced9e424e90a2f6","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42858d87-f3f0-46bd-afe7-c6a21207b761","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4206fdb-64ff-47bd-8877-344936a76607","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.8820524} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.465408,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f34f52d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f34f52d0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f34f52d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling 200 9ms","method":"POST","requestID":"f34f52d0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/42858d87-f3f0-46bd-afe7-c6a21207b761/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57d5b6d2887d5756dced9e424e90a2f6"} experiment-1 | {"level":"info","message":"DELETE /experiments/3ae24fec-18e4-4fe5-9400-4548610e6899 204 147ms","method":"DELETE","requestID":"57d5b6d2887d5756dced9e424e90a2f6","responseTime":147,"status":204,"url":"/experiments/3ae24fec-18e4-4fe5-9400-4548610e6899"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"2.169","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4f3aeec91a65e05731251819561e21ca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"623d68a40c6abe18c677e3cf73369df2","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"623d68a40c6abe18c677e3cf73369df2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"191fae68e19b961e5b48eadea0be6856","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"191fae68e19b961e5b48eadea0be6856"} gateway-1 | {"time_local":"23/Sep/2024:00:01:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.644","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":"bc4d82f2bc4b15f54f0506da4dacaecd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck","level":"info","message":"auth send jwt","requestID":"11e17548f66013d3001487ce7c1c073d"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"11e17548f66013d3001487ce7c1c073d"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/81a283e9-17ac-4b2f-865d-20d7bea08fe8' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.73152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11e17548f66013d3001487ce7c1c073d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049674,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NH0.hTsl1l3di4tQp_gK-Q3GB1g1C8nZLVguJb4QDmTMlck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/42858d87-f3f0-46bd-afe7-c6a21207b761' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1923f24f-1f0f-4a17-83ef-96b8dacc7cd3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.9768043} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7af42514-0720-41cc-9a77-cc685a339ebd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.9818795} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7a34247c-0549-4825-bed7-bc9e09bb1f3e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.9964764} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cfd54c3c-9f4b-4548-8981-e4c4f16b5fb6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049674.996752} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"2112c2e7-d301-4573-b42c-5f7013ee17b7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.0003016} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"11e17548f66013d3001487ce7c1c073d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11e17548f66013d3001487ce7c1c073d"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"11e17548f66013d3001487ce7c1c073d","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.783873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"325a48d8-97d2-4a2a-a99a-198c5ab855f4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.0234535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72150d7e-9799-41ff-8d38-d7537163b54a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.027642} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"663509ef-7faf-4bc8-9d15-a70a86f1ba91","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.0382392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04585558-8352-4ccb-ba7d-a47ac8578b9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.0385058} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"3b859752-72ac-4dd8-8145-0190e7717950","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.0422676} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ab2ea822ad35c21cc19ce9c5a90eeeb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"ee389d35eecdfb6d70bc86087f31f452"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee389d35eecdfb6d70bc86087f31f452","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"da533c8b82520eafbdec245bd3532db5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da533c8b82520eafbdec245bd3532db5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee389d35eecdfb6d70bc86087f31f452"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"da533c8b82520eafbdec245bd3532db5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.811721,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee389d35eecdfb6d70bc86087f31f452","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee389d35eecdfb6d70bc86087f31f452","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.570618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"da533c8b82520eafbdec245bd3532db5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"da533c8b82520eafbdec245bd3532db5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"8559f3d5-da15-43e1-94f6-a7dbcbc472dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.5148234} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ee389d35eecdfb6d70bc86087f31f452","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"289009a8-37f7-4322-89d7-57a13bb02bb7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.515367} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"da533c8b82520eafbdec245bd3532db5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aabc4f85-272d-42cf-9820-0cfe74725708","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.5192432} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ee389d35eecdfb6d70bc86087f31f452","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2de36aeb-7eaf-4810-9df8-10f6f32f5df4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.5212138} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"da533c8b82520eafbdec245bd3532db5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"bb28f923-fd76-4be3-a274-a3fe91d7ccfc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.52353} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"da533c8b82520eafbdec245bd3532db5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"da533c8b82520eafbdec245bd3532db5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"da533c8b82520eafbdec245bd3532db5"} device-1 | {"level":"info","message":"PATCH /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489 200 19ms","method":"PATCH","requestID":"da533c8b82520eafbdec245bd3532db5","responseTime":19,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630514,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"d9680922-d065-4ff5-9a46-b446d511fdaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.5334818} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ee389d35eecdfb6d70bc86087f31f452","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee389d35eecdfb6d70bc86087f31f452"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e8580421-6320-46ff-ad91-54c82c367e68 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ee389d35eecdfb6d70bc86087f31f452"} device-1 | {"level":"info","message":"PATCH /devices/e8580421-6320-46ff-ad91-54c82c367e68 200 30ms","method":"PATCH","requestID":"ee389d35eecdfb6d70bc86087f31f452","responseTime":30,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"73b78e683c19e46d4177cc03686130c5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"73b78e683c19e46d4177cc03686130c5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"73b78e683c19e46d4177cc03686130c5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655094,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"73b78e683c19e46d4177cc03686130c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"73b78e683c19e46d4177cc03686130c5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/websocket 200 16ms","method":"POST","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8","responseTime":16,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d2a9f0aaf0b0038d90d9411d8ab9fbd8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"73b78e683c19e46d4177cc03686130c5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"73b78e683c19e46d4177cc03686130c5"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/websocket 200 13ms","method":"POST","requestID":"73b78e683c19e46d4177cc03686130c5","responseTime":13,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693072,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d679548c03ccecfbaff70bf7ed1f7aa8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"b3fc0a06-0ef7-45fa-897a-d8dd84a730e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.585651} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8"} device-1 | {"level":"info","message":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? 200 9ms","method":"GET","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8","responseTime":9,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d679548c03ccecfbaff70bf7ed1f7aa8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"307abae3be4607b895bab266a1ff6f08"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"307abae3be4607b895bab266a1ff6f08","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"307abae3be4607b895bab266a1ff6f08"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.431639,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"307abae3be4607b895bab266a1ff6f08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"307abae3be4607b895bab266a1ff6f08","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"89da986e-ff96-4546-9284-f2291edbd24c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.6004086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"307abae3be4607b895bab266a1ff6f08","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"307abae3be4607b895bab266a1ff6f08"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"307abae3be4607b895bab266a1ff6f08"} device-1 | {"level":"info","message":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? 200 10ms","method":"GET","requestID":"307abae3be4607b895bab266a1ff6f08","responseTime":10,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6063db16d46ce1d4e28d5b127dc59b50","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.683094,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6063db16d46ce1d4e28d5b127dc59b50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6063db16d46ce1d4e28d5b127dc59b50","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to run experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to book experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully booked experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3c56d30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3c59440-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802569,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3c56d30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3c56d30-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.627621,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3c59440-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3c59440-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"a545b590-33ad-45c4-9861-b4ea2dc77a1e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.6582632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3c56d30-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"af36c062-b926-4324-9fd3-c25a8bb83ce0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.6587596} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3c59440-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3c56d30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? 200 13ms","method":"GET","requestID":"f3c56d30-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3c59440-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? 200 13ms","method":"GET","requestID":"f3c59440-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Setting up experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully set up experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3cfa660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3cff480-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3d042a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963894,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully running experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3cfa660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3cfa660-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.847937,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3cff480-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3cff480-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.270744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f8df3a3-ecce-4389-938c-fb1b0ef11c84","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7269096} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d042a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","rebac_allow":false,"scope_allow":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":"f3d042a0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"796b6ff0-c874-43e4-bf86-4192b886cee3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7287834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"9b0adcca-da6c-4a66-922c-61a6672fac04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7306244} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3cfa660-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3cff480-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3d042a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling 200 17ms","method":"POST","requestID":"f3d042a0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3cfa660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? 200 22ms","method":"GET","requestID":"f3cfa660-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3cff480-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? 200 22ms","method":"GET","requestID":"f3cff480-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3d34fe0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3d3ec20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa77017c8-af4d-447c-b08b-160c64f5e90f#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa77017c8-af4d-447c-b08b-160c64f5e90f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"56a4686d-9a79-43ff-8d9f-7bb2f6a9e87b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7465973} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11eecf3a-c125-4d3c-94b0-dc003512dc3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.747104} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"6063db16d46ce1d4e28d5b127dc59b50","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.176727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"840a9ab8-c98d-4f3a-a9d8-9d23d2025086","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.750166} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d34fe0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","rebac_allow":false,"scope_allow":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":"f3d34fe0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c9d4beb-dc53-46fa-b5da-7463c666bd65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7551515} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.421161,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d3ec20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","rebac_allow":false,"scope_allow":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":"f3d3ec20-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3d34fe0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling 200 17ms","method":"POST","requestID":"f3d34fe0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"6063db16d46ce1d4e28d5b127dc59b50","responseTime":152,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3d3ec20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling 200 15ms","method":"POST","requestID":"f3d3ec20-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3d65d20-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"5848745df3a5ca292f59334b4cec21ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5848745df3a5ca292f59334b4cec21ea","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5848745df3a5ca292f59334b4cec21ea"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2d194e0-eabb-4b60-acf4-116186011faa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7681658} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.690531,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d65d20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3d65d20-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.791001,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5848745df3a5ca292f59334b4cec21ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5848745df3a5ca292f59334b4cec21ea","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3d65d20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling 200 11ms","method":"POST","requestID":"f3d65d20-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"79c53d86-1e8a-4ae4-b301-5c4af82b9869","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7733214} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5848745df3a5ca292f59334b4cec21ea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3d858f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3d88000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5848745df3a5ca292f59334b4cec21ea"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696698,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5848745df3a5ca292f59334b4cec21ea"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} device-1 | {"level":"info","message":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? 200 13ms","method":"GET","requestID":"5848745df3a5ca292f59334b4cec21ea","responseTime":13,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d858f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3d858f0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82614,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3d88000-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3d88000-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:14.996444043Z"}]},"request_id":"733ffcd5-c4e0-4fd3-bb8b-62d284030d36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7821152} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"44f85dbfc107167a64626519da70ea97"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"44f85dbfc107167a64626519da70ea97","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3d858f0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"4630cf1f-0373-4da4-ac9d-9444bb3ea7a2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7833288} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3d88000-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44f85dbfc107167a64626519da70ea97"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.928043,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3d858f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"44f85dbfc107167a64626519da70ea97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} device-1 | {"level":"info","message":"GET /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489? 200 14ms","method":"GET","requestID":"f3d858f0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44f85dbfc107167a64626519da70ea97","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3d88000-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? 200 13ms","method":"GET","requestID":"f3d88000-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Building connection plan","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} 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":"7520e211-a789-4c29-af7d-cac2623c97e9"},{"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":"8037fea3-dae2-47e0-ae36-5cf4d7ef2623"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"be2e2547-0c17-463a-866f-7ade96efa73b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f3daf100-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f3daf100-793e-11ef-a51e-0dff660adfff"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:15.038203400Z"}]},"request_id":"cfd45445-c766-4217-9ae8-85003c2ed754","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.7930408} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f3daf100-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44f85dbfc107167a64626519da70ea97","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6?id=9177bb80-89fe-4bfc-9fc3-939114e5ae89","ws://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6?id=71596609-5dc8-4553-abf8-4688d723e926"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44f85dbfc107167a64626519da70ea97"} device-1 | {"level":"info","message":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? 200 11ms","method":"GET","requestID":"44f85dbfc107167a64626519da70ea97","responseTime":11,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8580421-6320-46ff-ad91-54c82c367e68? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44f85dbfc107167a64626519da70ea97"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.776326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3dbb450-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"08536a3f-48fb-4416-ac96-8e1057dab23e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.8071458} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"568cf420-4967-4d92-9daa-412846c61656","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.8073108} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20'","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20'","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"f3dbb450-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"f3dbb450-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f3e06f40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9177bb80-89fe-4bfc-9fc3-939114e5ae89\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\"","requestID":"f3e06f40-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f3e06f40-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dac572a11f86916b0d06fd22221b6417","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f3e09650-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dac572a11f86916b0d06fd22221b6417","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"71596609-5dc8-4553-abf8-4688d723e926\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\"","requestID":"f3e09650-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f3e09650-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"71596609-5dc8-4553-abf8-4688d723e926\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\"","requestID":"f3e09650-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"71596609-5dc8-4553-abf8-4688d723e926\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"71596609-5dc8-4553-abf8-4688d723e926\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"}}},"level":"info","message":"received a callback","requestID":"dac572a11f86916b0d06fd22221b6417"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"dac572a11f86916b0d06fd22221b6417","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"dac572a11f86916b0d06fd22221b6417"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6063db16d46ce1d4e28d5b127dc59b50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3e4b500-793e-11ef-9733-5750b05365a5"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa65e12a-4084-41ac-8167-93ebd1b71734","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.860328} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.48823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3e4b500-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3e4b500-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3e4b500-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling 200 13ms","method":"POST","requestID":"f3e4b500-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ad7695b5a208be922a0c591818ffce7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4ad7695b5a208be922a0c591818ffce7","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3e6fef0-793e-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"}}},"level":"info","message":"received a callback","requestID":"4ad7695b5a208be922a0c591818ffce7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c8adb23-8d40-459d-a4ab-d2a8f9675aae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.8759553} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.127241,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f3e7e950-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3e6fef0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","rebac_allow":false,"scope_allow":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":"f3e6fef0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e53d90a-eeea-48b7-b110-751785ed9e20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3598083-1a08-46cc-8043-0d24a370dc6e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.8808458} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3e6fef0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling 200 10ms","method":"POST","requestID":"f3e6fef0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.427012,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3e7e950-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3e7e950-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f3e7e950-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20 200 7ms","method":"GET","requestID":"f3e7e950-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"4ad7695b5a208be922a0c591818ffce7","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"4ad7695b5a208be922a0c591818ffce7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3eb6bc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"098ffc9a-36f7-4849-8304-386b93a65ab3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.903824} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.096377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3eb6bc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3eb6bc0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3eb6bc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling 200 7ms","method":"POST","requestID":"f3eb6bc0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3eccb50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6837955-06c2-4105-b972-930121d64098","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.9136884} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.733656,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3eccb50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3eccb50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3eccb50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling 200 8ms","method":"POST","requestID":"f3eccb50-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"b5f1949bc830fedb14dc02675f779d70"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b5f1949bc830fedb14dc02675f779d70","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","requestID":"b5f1949bc830fedb14dc02675f779d70"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.714317,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b5f1949bc830fedb14dc02675f779d70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b5f1949bc830fedb14dc02675f779d70","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","requestID":"b5f1949bc830fedb14dc02675f779d70"} experiment-1 | {"level":"info","message":"GET /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f 200 9ms","method":"GET","requestID":"b5f1949bc830fedb14dc02675f779d70","responseTime":9,"status":200,"url":"/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b5f1949bc830fedb14dc02675f779d70"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg","level":"info","message":"auth send jwt","requestID":"8064255f287a059b61b5d66d26ba5206"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8064255f287a059b61b5d66d26ba5206","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","requestID":"8064255f287a059b61b5d66d26ba5206"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.657033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8064255f287a059b61b5d66d26ba5206","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8064255f287a059b61b5d66d26ba5206","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Attempting to finish experiment","requestID":"8064255f287a059b61b5d66d26ba5206"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.785318,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049675,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3NX0.Y1_ReCkMBhDrJFPJmo7CMhhGblpcoEgqCNcI9PLzcVg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/95e07451-c942-49c2-b2a4-469c943b8bc6?id=71596609-5dc8-4553-abf8-4688d723e926 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b745ecac19341e070a2fb7ff90abeed3"} gateway-1 | {"time_local":"23/Sep/2024:00:01:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/95e07451-c942-49c2-b2a4-469c943b8bc6?id=9177bb80-89fe-4bfc-9fc3-939114e5ae89 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"18de0922d9e55849cf7e7f78b220c2dc"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"71596609-5dc8-4553-abf8-4688d723e926\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"71596609-5dc8-4553-abf8-4688d723e926\" from room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9177bb80-89fe-4bfc-9fc3-939114e5ae89\" in room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9177bb80-89fe-4bfc-9fc3-939114e5ae89\" from room \"http://localhost/rooms/95e07451-c942-49c2-b2a4-469c943b8bc6\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5707f84777f742121743c8cf9d12cc6a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5707f84777f742121743c8cf9d12cc6a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e53d90a-eeea-48b7-b110-751785ed9e20': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e53d90a-eeea-48b7-b110-751785ed9e20","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"d1ff70bf-fa13-404d-9319-9c397cbcae22","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.9776278} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"795fbcc2986da2175add20f08187ec00","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"795fbcc2986da2175add20f08187ec00","responseTime":0,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01a239f5-d27e-48f3-a6f1-2e7cb9369f87","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049675.9780571} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"}}},"level":"info","message":"received a callback","requestID":"5707f84777f742121743c8cf9d12cc6a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"}}},"level":"info","message":"received a callback","requestID":"795fbcc2986da2175add20f08187ec00"} device-1 | {"data":{"peerconnection":"1e53d90a-eeea-48b7-b110-751785ed9e20","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20 204 36ms","method":"DELETE","requestID":"f3f4e1a0-793e-11ef-9733-5750b05365a5","responseTime":36,"status":204,"url":"/peerconnections/1e53d90a-eeea-48b7-b110-751785ed9e20"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"},"level":"info","message":"Successfully finished experiment","requestID":"8064255f287a059b61b5d66d26ba5206"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3fd1f00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7c96a4a-624d-487a-8c6a-feff2e282c7a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.0211768} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.313299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3fd1f00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3fd1f00-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3fd1f00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling 200 9ms","method":"POST","requestID":"f3fd1f00-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa77017c8-af4d-447c-b08b-160c64f5e90f': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa77017c8-af4d-447c-b08b-160c64f5e90f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"9c669de1-2d76-470d-bd97-86598b725c80","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.0275726} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3fef3c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91a0f4e9-fb7c-4b71-bd00-6251083d6856","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.028039} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8064255f287a059b61b5d66d26ba5206","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8580421-6320-46ff-ad91-54c82c367e68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fc9bbb3-1b94-4f0f-83ae-afd18665ef0d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.0324454} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.889156,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f3fef3c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68","object_type":"device","rebac_allow":false,"scope_allow":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":"f3fef3c0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3fef3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling 200 9ms","method":"POST","requestID":"f3fef3c0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/e8580421-6320-46ff-ad91-54c82c367e68/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f","requestID":"8064255f287a059b61b5d66d26ba5206"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8064255f287a059b61b5d66d26ba5206"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.551","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dbcb73e7cbfa275bdeba9b0e94b745d1"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.543","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"39430239041f039e5f5b587cf5f107e1"} experiment-1 | {"level":"info","message":"DELETE /experiments/a77017c8-af4d-447c-b08b-160c64f5e90f 204 147ms","method":"DELETE","requestID":"8064255f287a059b61b5d66d26ba5206","responseTime":147,"status":204,"url":"/experiments/a77017c8-af4d-447c-b08b-160c64f5e90f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"5707f84777f742121743c8cf9d12cc6a","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"5707f84777f742121743c8cf9d12cc6a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"795fbcc2986da2175add20f08187ec00","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"795fbcc2986da2175add20f08187ec00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"f63c73df4dfdee96475aa9ca1a878f6f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e8580421-6320-46ff-ad91-54c82c367e68' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"f63c73df4dfdee96475aa9ca1a878f6f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.858561,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f63c73df4dfdee96475aa9ca1a878f6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/622a7aa5-2ea3-4f7a-902e-f5baf6cfb489' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3e9cfa84-560f-4077-baf3-49df5633c8fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1253924} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f468fa8b-fa57-46b9-bb04-03c925cbf270","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.130485} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"787dc5de-f083-4232-9e3d-1c4fc0ff063d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.140033} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5a6a2e8-d2b7-4464-9cf5-30931d2a7570","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1401691} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"155baed2-8b4e-4954-a30a-cff96f1d79f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1446576} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f63c73df4dfdee96475aa9ca1a878f6f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f63c73df4dfdee96475aa9ca1a878f6f"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f63c73df4dfdee96475aa9ca1a878f6f","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"311afe163dcda0ac92043e9f163db73d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"311afe163dcda0ac92043e9f163db73d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"311afe163dcda0ac92043e9f163db73d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.852332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"311afe163dcda0ac92043e9f163db73d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"12ce8af4-b64e-4a8f-b3f9-f4a07e779419","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.167639} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f9f5ed5-3b8d-4469-9d9e-9d0f6224a1d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1723897} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"d6fd8582-0490-4667-b881-323b42e1e21f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1884704} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18b9523c-23ab-45bb-a587-7357f0fbe1cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.188564} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"1b85c929-d19c-45e4-acfa-d266323dae36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.1933198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"311afe163dcda0ac92043e9f163db73d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"311afe163dcda0ac92043e9f163db73d"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"311afe163dcda0ac92043e9f163db73d","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"faaf93979edf1ac84c7317e7b79963ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"faaf93979edf1ac84c7317e7b79963ae","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"bd5b28e16952142691be6b4473cdeddf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd5b28e16952142691be6b4473cdeddf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"faaf93979edf1ac84c7317e7b79963ae"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bd5b28e16952142691be6b4473cdeddf"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.853778,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"faaf93979edf1ac84c7317e7b79963ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"faaf93979edf1ac84c7317e7b79963ae","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615826,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd5b28e16952142691be6b4473cdeddf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd5b28e16952142691be6b4473cdeddf","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"da473024-cf4d-4e02-b50e-7e546bebfc42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.6696775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"faaf93979edf1ac84c7317e7b79963ae","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"be7cb0e0-3102-4a8d-aec2-fe0dfc1a1ba9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.6708746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bd5b28e16952142691be6b4473cdeddf","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37e229f5-3fd8-49e7-ba3f-283dc20c9a21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.67475} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"faaf93979edf1ac84c7317e7b79963ae","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc0c60bf-f790-445c-97f0-116a6a08ac99","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.6758232} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"bd5b28e16952142691be6b4473cdeddf","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"6ea4da94-013e-4952-ad82-e275941ad2fa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.67847} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd5b28e16952142691be6b4473cdeddf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bd5b28e16952142691be6b4473cdeddf"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bd5b28e16952142691be6b4473cdeddf"} device-1 | {"level":"info","message":"PATCH /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328 200 23ms","method":"PATCH","requestID":"bd5b28e16952142691be6b4473cdeddf","responseTime":23,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"2af1886a-0342-43b7-a300-e2f65d678a0f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.6862707} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"faaf93979edf1ac84c7317e7b79963ae","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"7a2b50318a238bc42af83fa8c060b566"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7a2b50318a238bc42af83fa8c060b566","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"faaf93979edf1ac84c7317e7b79963ae"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"faaf93979edf1ac84c7317e7b79963ae"} device-1 | {"level":"info","message":"PATCH /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0 200 30ms","method":"PATCH","requestID":"faaf93979edf1ac84c7317e7b79963ae","responseTime":30,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7a2b50318a238bc42af83fa8c060b566"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7a2b50318a238bc42af83fa8c060b566","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7a2b50318a238bc42af83fa8c060b566","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"27dd50f7354d0505329b6e0ecf1d5686"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27dd50f7354d0505329b6e0ecf1d5686","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"27dd50f7354d0505329b6e0ecf1d5686"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931169,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"27dd50f7354d0505329b6e0ecf1d5686","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27dd50f7354d0505329b6e0ecf1d5686","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7a2b50318a238bc42af83fa8c060b566"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7a2b50318a238bc42af83fa8c060b566"} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/websocket 200 17ms","method":"POST","requestID":"7a2b50318a238bc42af83fa8c060b566","responseTime":17,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"27dd50f7354d0505329b6e0ecf1d5686"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/websocket 200 20ms","method":"POST","requestID":"27dd50f7354d0505329b6e0ecf1d5686","responseTime":20,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"27dd50f7354d0505329b6e0ecf1d5686"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"e123afa338e4e22ef8762b2a892f092b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e123afa338e4e22ef8762b2a892f092b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e123afa338e4e22ef8762b2a892f092b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.644962,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e123afa338e4e22ef8762b2a892f092b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e123afa338e4e22ef8762b2a892f092b","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"9e9e3fdf-8186-43a4-b95a-9d952c77e57f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.7401469} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e123afa338e4e22ef8762b2a892f092b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e123afa338e4e22ef8762b2a892f092b"} device-1 | {"level":"info","message":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? 200 9ms","method":"GET","requestID":"e123afa338e4e22ef8762b2a892f092b","responseTime":9,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e123afa338e4e22ef8762b2a892f092b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"1369b113f9486ca7c2c4586bce1ee383"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1369b113f9486ca7c2c4586bce1ee383","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1369b113f9486ca7c2c4586bce1ee383"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1369b113f9486ca7c2c4586bce1ee383","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1369b113f9486ca7c2c4586bce1ee383","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"63ed5597-4b38-4416-9372-8f597873a738","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.7565358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1369b113f9486ca7c2c4586bce1ee383","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1369b113f9486ca7c2c4586bce1ee383"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1369b113f9486ca7c2c4586bce1ee383"} device-1 | {"level":"info","message":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? 200 13ms","method":"GET","requestID":"1369b113f9486ca7c2c4586bce1ee383","responseTime":13,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"5305ae4b633e93eab77a7ec712e03de9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5305ae4b633e93eab77a7ec712e03de9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5305ae4b633e93eab77a7ec712e03de9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.732444,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5305ae4b633e93eab77a7ec712e03de9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5305ae4b633e93eab77a7ec712e03de9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to run experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to book experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully booked experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4758350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f475d170-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4758350-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4758350-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354647,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f475d170-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f475d170-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"26d6768c-e476-4123-81b1-a631a96cca27","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.813829} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4758350-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"ce98773b-3fd8-4cdd-82c7-117eb5bc4ccc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.8145761} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f475d170-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4758350-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? 200 16ms","method":"GET","requestID":"f4758350-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f475d170-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? 200 16ms","method":"GET","requestID":"f475d170-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Setting up experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully set up experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f48031b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4807fd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f480a6e0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f48031b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully running experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f48031b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349892,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4807fd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4807fd0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47b1c76f-08e7-4960-9d01-2918b0366553","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.8850217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"25cf369e-79e3-4090-b348-af6c2a01e8de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.8868692} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f480a6e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","rebac_allow":false,"scope_allow":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":"f480a6e0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"eedd1431-321f-4e02-957c-88935a8def04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.8879616} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f48031b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4807fd0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f480a6e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling 200 17ms","method":"POST","requestID":"f480a6e0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f48031b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? 200 21ms","method":"GET","requestID":"f48031b0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4807fd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? 200 21ms","method":"GET","requestID":"f4807fd0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f483b420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4842950-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fe70d7b-6a35-4055-9c87-653ce812e0e4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fe70d7b-6a35-4055-9c87-653ce812e0e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"5fa89c18-9a26-4dfc-a1d7-914431c9fd9a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.901974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f86a4467-5313-444f-a798-196f5215aa06","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9023063} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdc865aa-5e17-46b4-8a9b-df3d36269076","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.904712} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"5305ae4b633e93eab77a7ec712e03de9","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.622932,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f483b420-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f483b420-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa11c7f3-5a94-4a9d-b11d-9adfab7a8c43","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9061053} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4842950-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4842950-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f483b420-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling 200 15ms","method":"POST","requestID":"f483b420-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4842950-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling 200 13ms","method":"POST","requestID":"f4842950-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5305ae4b633e93eab77a7ec712e03de9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"5305ae4b633e93eab77a7ec712e03de9","responseTime":148,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4869a50-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"cf969e0826666c05b3e6a67eab9e06c8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cf969e0826666c05b3e6a67eab9e06c8","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cf969e0826666c05b3e6a67eab9e06c8"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c20fbf43-3645-4ecf-948a-ac328a235c8e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.922119} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.085558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cf969e0826666c05b3e6a67eab9e06c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cf969e0826666c05b3e6a67eab9e06c8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.560217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4869a50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","rebac_allow":false,"scope_allow":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":"f4869a50-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4869a50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"68a2a117-83f7-4f19-9631-9a575bb5545b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.927581} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling 200 10ms","method":"POST","requestID":"f4869a50-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf969e0826666c05b3e6a67eab9e06c8","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4886f10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4889620-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cf969e0826666c05b3e6a67eab9e06c8"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cf969e0826666c05b3e6a67eab9e06c8"} device-1 | {"level":"info","message":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? 200 12ms","method":"GET","requestID":"cf969e0826666c05b3e6a67eab9e06c8","responseTime":12,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902494,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4886f10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4886f10-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854706,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4889620-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4889620-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM","level":"info","message":"auth send jwt","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.139984667Z"}]},"request_id":"b88a7549-04b0-45c8-9c99-213743b31d52","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9390752} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4886f10-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"6dbca12c-4e55-4eac-ac11-4507c8a6de8e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9403102} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4886f10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4889620-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} device-1 | {"level":"info","message":"GET /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0? 200 14ms","method":"GET","requestID":"f4886f10-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"91ff9f660f13c013eba7a9f65dd4ccbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4889620-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? 200 16ms","method":"GET","requestID":"f4889620-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:16.188429630Z"}]},"request_id":"1d89dfcc-3b9a-472e-ab71-df0cd50d3f94","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9471097} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Building connection plan","requestID":"5305ae4b633e93eab77a7ec712e03de9"} 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":"f32a60e3-6550-4fc9-a2b4-0f9c81639223"},{"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":"94e0c80a-73cc-400a-96b3-4415ebd337fc"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"48a6bf5c-83a2-4919-8844-70c593c35159"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5305ae4b633e93eab77a7ec712e03de9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f48b7c50-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f48b7c50-793e-11ef-a51e-0dff660adfff"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf"} device-1 | {"level":"info","message":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? 200 11ms","method":"GET","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf","responseTime":11,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91ff9f660f13c013eba7a9f65dd4ccbf"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f48b7c50-793e-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea?id=35468bf3-e6d0-4b5e-9e3a-d226b15f5935","ws://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea?id=73d1373e-5397-4c5e-abc7-3d00fe8f218d"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.670269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f48bf180-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049676,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3Nn0.PLuKLiwwAKRRtEf_Bs1Z4kmbj-MVpZgw8z9pQbhgcSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f48bf180-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"0ad9e337-8177-40de-98c7-7fe4a6b735ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9625545} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af7c13eb-15e7-4457-a61a-e31617a73c58","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049676.9628284} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f48bf180-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577'","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577'","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"f48bf180-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"f48bf180-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f490ac70-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\"","requestID":"f490ac70-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f490ac70-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"425894857b33e1268b33f413d4ba3863","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f490d380-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"35468bf3-e6d0-4b5e-9e3a-d226b15f5935\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\"","requestID":"f490d380-793e-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f490d380-793e-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"425894857b33e1268b33f413d4ba3863","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"}}},"level":"info","message":"received a callback","requestID":"425894857b33e1268b33f413d4ba3863"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"425894857b33e1268b33f413d4ba3863","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:16 +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":"425894857b33e1268b33f413d4ba3863"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5305ae4b633e93eab77a7ec712e03de9"} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f49392a0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b32ef3d-9d40-4554-8cec-898682d24f6b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.0072935} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119056,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f49392a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f49392a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f49392a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling 200 15ms","method":"POST","requestID":"f49392a0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3128886e5ef7dbfda72a8a57d12955f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3128886e5ef7dbfda72a8a57d12955f4","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4962ab0-793e-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"}}},"level":"info","message":"received a callback","requestID":"3128886e5ef7dbfda72a8a57d12955f4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76354cb9-1278-4dae-a86d-886b76cc2e4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.023521} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.264349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4962ab0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","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":"getPeerconnectionsByPeerconnectionId called","requestID":"f496ee00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4962ab0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4962ab0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling 200 9ms","method":"POST","requestID":"f4962ab0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22883c84-9f50-4f77-9ce5-3e4807b6c577","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4f609f3-fbff-4979-af83-3b6ba3395efb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.0287209} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.549349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f496ee00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f496ee00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f496ee00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577 200 7ms","method":"GET","requestID":"f496ee00-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"3128886e5ef7dbfda72a8a57d12955f4","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"3128886e5ef7dbfda72a8a57d12955f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f49a4960-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdfbe328-8d81-400b-8738-3f5647756bd9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.0500708} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.365402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f49a4960-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f49a4960-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f49a4960-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling 200 7ms","method":"POST","requestID":"f49a4960-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f49ba8f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c86d60fb-ff09-4fc1-b527-16216e963f3b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.0600257} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.154076,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f49ba8f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f49ba8f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f49ba8f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling 200 8ms","method":"POST","requestID":"f49ba8f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0","level":"info","message":"auth send jwt","requestID":"e8366b25cedb201eb4bfdaaadb71002b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8366b25cedb201eb4bfdaaadb71002b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","requestID":"e8366b25cedb201eb4bfdaaadb71002b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.76488,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e8366b25cedb201eb4bfdaaadb71002b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049677,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e8366b25cedb201eb4bfdaaadb71002b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","requestID":"e8366b25cedb201eb4bfdaaadb71002b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8366b25cedb201eb4bfdaaadb71002b"} experiment-1 | {"level":"info","message":"GET /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4 200 15ms","method":"GET","requestID":"e8366b25cedb201eb4bfdaaadb71002b","responseTime":15,"status":200,"url":"/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0","level":"info","message":"auth send jwt","requestID":"54c47f015586b49f537d15167c78c8f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"54c47f015586b49f537d15167c78c8f6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","requestID":"54c47f015586b49f537d15167c78c8f6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.947529,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"54c47f015586b49f537d15167c78c8f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049677,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54c47f015586b49f537d15167c78c8f6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Attempting to finish experiment","requestID":"54c47f015586b49f537d15167c78c8f6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f4a6f390-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.185822,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4a6f390-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049677,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4a6f390-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea?id=35468bf3-e6d0-4b5e-9e3a-d226b15f5935 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6f39325673fca45b82fe4bd8cd858e0b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea?id=73d1373e-5397-4c5e-abc7-3d00fe8f218d HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.162","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b13547d574acbeddba000660c59f467d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"35468bf3-e6d0-4b5e-9e3a-d226b15f5935\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"35468bf3-e6d0-4b5e-9e3a-d226b15f5935\" from room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" in room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"73d1373e-5397-4c5e-abc7-3d00fe8f218d\" from room \"http://localhost/rooms/d334b701-e0d0-41b7-9b4b-f6d409f921ea\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1bf5fbe6956cc8abd64174b617fde5c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22883c84-9f50-4f77-9ce5-3e4807b6c577': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22883c84-9f50-4f77-9ce5-3e4807b6c577","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"6f8ea0a3-b3a6-430e-97aa-ee58db5332dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.1517842} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1bf5fbe6956cc8abd64174b617fde5c0","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf58e1e1-f08c-4e46-ae24-5e0dae81805a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.1522205} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a1a6ef0e39485697ff9e7deaaae43d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5a1a6ef0e39485697ff9e7deaaae43d8","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"}}},"level":"info","message":"received a callback","requestID":"1bf5fbe6956cc8abd64174b617fde5c0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f4a6f390-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"}}},"level":"info","message":"received a callback","requestID":"5a1a6ef0e39485697ff9e7deaaae43d8"} device-1 | {"data":{"peerconnection":"22883c84-9f50-4f77-9ce5-3e4807b6c577","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f4a6f390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577 204 49ms","method":"DELETE","requestID":"f4a6f390-793e-11ef-9733-5750b05365a5","responseTime":49,"status":204,"url":"/peerconnections/22883c84-9f50-4f77-9ce5-3e4807b6c577"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"},"level":"info","message":"Successfully finished experiment","requestID":"54c47f015586b49f537d15167c78c8f6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4b2da70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f428c25-5d28-4421-861f-cddc5fa87fb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d225069-9483-46cf-9985-366210ed0596","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.2141564} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.42145,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4b2da70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0","object_type":"device","rebac_allow":false,"scope_allow":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":"f4b2da70-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4b2da70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling 200 13ms","method":"POST","requestID":"f4b2da70-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fe70d7b-6a35-4055-9c87-653ce812e0e4': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fe70d7b-6a35-4055-9c87-653ce812e0e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"a4ab4694-fa8f-4971-b4c1-baf44de6c180","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.2236285} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4b54b70-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4126916f-48b4-4292-a79d-5fecb2f2f8c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.2239282} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"54c47f015586b49f537d15167c78c8f6","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa49d0781-1fe2-4b7a-b3b7-a0586b5a8328","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e272ccbd-7fbb-4c32-b8f7-1c6bfe31bd17","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.229871} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.989572,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4b54b70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4b54b70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4b54b70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling 200 11ms","method":"POST","requestID":"f4b54b70-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4","requestID":"54c47f015586b49f537d15167c78c8f6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54c47f015586b49f537d15167c78c8f6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.581","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5a1237e7830d33b5457451fa8281c858"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.591","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2c0cf234c2141e7610a8817abcc85bca"} experiment-1 | {"level":"info","message":"DELETE /experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4 204 184ms","method":"DELETE","requestID":"54c47f015586b49f537d15167c78c8f6","responseTime":184,"status":204,"url":"/experiments/0fe70d7b-6a35-4055-9c87-653ce812e0e4"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a49d0781-1fe2-4b7a-b3b7-a0586b5a8328' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0","level":"info","message":"auth send jwt","requestID":"94253a3c5e630cad80f5120672dcd3f6"} device-1 | {"level":"info","message":"postDevices called","requestID":"94253a3c5e630cad80f5120672dcd3f6"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"1bf5fbe6956cc8abd64174b617fde5c0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"1bf5fbe6956cc8abd64174b617fde5c0","responseTime":147,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a1a6ef0e39485697ff9e7deaaae43d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"5a1a6ef0e39485697ff9e7deaaae43d8","responseTime":146,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.149712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"94253a3c5e630cad80f5120672dcd3f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049677,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1f428c25-5d28-4421-861f-cddc5fa87fb0' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2496f8f3-15e8-41bd-9bb0-88cf41b295af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3296123} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c2e2c7e-fbca-4833-9009-8e200b276f4f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.334787} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c28bb558-78c9-48f3-8476-d5d5b386e50e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3450444} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd5785a8-688d-4bfe-ae48-6a563955e196","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3452692} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"ca6be777-e89f-4185-900b-02e6b8f053af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3503776} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"94253a3c5e630cad80f5120672dcd3f6"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94253a3c5e630cad80f5120672dcd3f6"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"94253a3c5e630cad80f5120672dcd3f6","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0","level":"info","message":"auth send jwt","requestID":"71a3e817c933393585c36be8ee455188"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71a3e817c933393585c36be8ee455188","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"71a3e817c933393585c36be8ee455188"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.81681,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"71a3e817c933393585c36be8ee455188","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049677,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3N30.7C5itUru-OTSqF27qhxEewDYpKKUSmnuD02ab_ZKAE0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"491ab41f-5560-4db0-ae97-ee4dee00cc18","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3770783} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b1f5096-9733-424a-8d24-5fbca931868b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3822324} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9b9cc443-89fd-468c-bd7d-8445427c04ec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3989782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95bc1fe3-b5d9-405b-a969-0f4baa36ceee","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.3992572} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"bd5d6326-5b39-48ae-823f-03ee0e3eff60","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049677.4035077} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"71a3e817c933393585c36be8ee455188"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"71a3e817c933393585c36be8ee455188","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71a3e817c933393585c36be8ee455188"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9347433b035f556a6e29abb18d3ef6e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9347433b035f556a6e29abb18d3ef6e1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/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":"9347433b035f556a6e29abb18d3ef6e1"} device-1 | {"level":"info","message":"OPTIONS /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/websocket 200 1ms","method":"OPTIONS","requestID":"9347433b035f556a6e29abb18d3ef6e1","responseTime":1,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"b479cc6c61897035903ed5a29bf375e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b479cc6c61897035903ed5a29bf375e0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b479cc6c61897035903ed5a29bf375e0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22182,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b479cc6c61897035903ed5a29bf375e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b479cc6c61897035903ed5a29bf375e0","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4de28d659080261767cac47219b28841","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4de28d659080261767cac47219b28841","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/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":"4de28d659080261767cac47219b28841"} device-1 | {"level":"info","message":"OPTIONS /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/websocket 200 1ms","method":"OPTIONS","requestID":"4de28d659080261767cac47219b28841","responseTime":1,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b479cc6c61897035903ed5a29bf375e0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b479cc6c61897035903ed5a29bf375e0"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/websocket 200 22ms","method":"POST","requestID":"b479cc6c61897035903ed5a29bf375e0","responseTime":22,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"34bfffef380bd94babb07004b842794b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34bfffef380bd94babb07004b842794b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"34bfffef380bd94babb07004b842794b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.867032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"34bfffef380bd94babb07004b842794b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34bfffef380bd94babb07004b842794b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"34bfffef380bd94babb07004b842794b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34bfffef380bd94babb07004b842794b"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/websocket 200 18ms","method":"POST","requestID":"34bfffef380bd94babb07004b842794b","responseTime":18,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"20a83de2ba6cce58b2ce7e8c326efd9e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"20a83de2ba6cce58b2ce7e8c326efd9e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32' connected"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"20a83de2ba6cce58b2ce7e8c326efd9e"} device-1 | {"level":"info","message":"OPTIONS /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 1ms","method":"OPTIONS","requestID":"20a83de2ba6cce58b2ce7e8c326efd9e","responseTime":1,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"5949674e127ced9306ac2e8a8bd0be46"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5949674e127ced9306ac2e8a8bd0be46","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5949674e127ced9306ac2e8a8bd0be46"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366489,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5949674e127ced9306ac2e8a8bd0be46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5949674e127ced9306ac2e8a8bd0be46","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d93970ede0db18c033f1b620145cb3cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d93970ede0db18c033f1b620145cb3cd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d93970ede0db18c033f1b620145cb3cd"} device-1 | {"level":"info","message":"OPTIONS /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 0ms","method":"OPTIONS","requestID":"d93970ede0db18c033f1b620145cb3cd","responseTime":0,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"dca5bdf1-1232-478a-96b4-c7308923de21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.4579573} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5949674e127ced9306ac2e8a8bd0be46","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aecdac35-5a9e-4b56-ad84-8704b697bc87","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.463838} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5949674e127ced9306ac2e8a8bd0be46","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"0efb2f34-f52e-4255-b38e-d21e67f8a524","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.4763446} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5949674e127ced9306ac2e8a8bd0be46","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"883a6aa2-068b-44fb-8d52-b9be32d368fa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.4780214} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5949674e127ced9306ac2e8a8bd0be46"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"5949674e127ced9306ac2e8a8bd0be46"} device-1 | {"level":"info","message":"PATCH /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 34ms","method":"PATCH","requestID":"5949674e127ced9306ac2e8a8bd0be46","responseTime":34,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"112ecf67-4ece-45b9-a741-3c12fe756518","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.4850857} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"f16c33b9-2b6f-4695-ba03-57ba043287cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.499452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.042","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":"f216b5bc3eddcc87b28f42f8a1246ab0"} device-1 | {"level":"info","message":"PATCH /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 37ms","method":"PATCH","requestID":"f216b5bc3eddcc87b28f42f8a1246ab0","responseTime":37,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"f40b92b8121111dac240f3a6501d6b9e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f40b92b8121111dac240f3a6501d6b9e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f40b92b8121111dac240f3a6501d6b9e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f40b92b8121111dac240f3a6501d6b9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f40b92b8121111dac240f3a6501d6b9e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"dcd658ed-1dc6-43f5-a58c-b0f80ed468e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.5231094} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f40b92b8121111dac240f3a6501d6b9e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f40b92b8121111dac240f3a6501d6b9e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f40b92b8121111dac240f3a6501d6b9e"} device-1 | {"level":"info","message":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 13ms","method":"GET","requestID":"f40b92b8121111dac240f3a6501d6b9e","responseTime":13,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"9c1d961465255a875bbbf1293e7d2b24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c1d961465255a875bbbf1293e7d2b24","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c1d961465255a875bbbf1293e7d2b24"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.098557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9c1d961465255a875bbbf1293e7d2b24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c1d961465255a875bbbf1293e7d2b24","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"c5175610-8280-469d-877b-e8cec84ccb5d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.543} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9c1d961465255a875bbbf1293e7d2b24","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c1d961465255a875bbbf1293e7d2b24"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c1d961465255a875bbbf1293e7d2b24"} device-1 | {"level":"info","message":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 14ms","method":"GET","requestID":"9c1d961465255a875bbbf1293e7d2b24","responseTime":14,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.215447,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ddb258427fa2c7de1ad84501d2f6fa8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to run experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to book experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully booked experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f61e9f70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f61eed90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.857869,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f61e9f70-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f61e9f70-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.123551,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f61eed90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f61eed90-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"646a2592-9388-4635-bd6b-c19f38db557a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.602601} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f61e9f70-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"306b082a-8102-410e-9b25-8de51b48d9f1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.604257} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f61eed90-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f61e9f70-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 19ms","method":"GET","requestID":"f61e9f70-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f61eed90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 18ms","method":"GET","requestID":"f61eed90-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Setting up experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully set up experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6294dd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6299bf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f629ea10-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully running experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.066651,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6294dd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6294dd0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6299bf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6299bf0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"51ce93e5-b5e0-4758-ada7-37daf8b2fa5f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.6726205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"ddcf5859-23fe-4c41-be50-06b80da9b305","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.6731777} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97a37a6c-dfb0-45ac-8cdd-9759a0ffefde","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.6758723} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"f6294dd0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f6299bf0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.21198,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f629ea10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","rebac_allow":false,"scope_allow":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":"f629ea10-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6299bf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 19ms","method":"GET","requestID":"f6299bf0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6294dd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 21ms","method":"GET","requestID":"f6294dd0-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f629ea10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling 200 18ms","method":"POST","requestID":"f629ea10-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5a814a58-094d-419d-8651-a2cc9ca69e4c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5a814a58-094d-419d-8651-a2cc9ca69e4c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"22eb971d-e6cb-4fc5-8c19-78f8b499ab90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.6840162} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"daf98520-0e29-49f2-947a-23689390c39e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.6842296} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f62cf750-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f62d1e60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04037ed0-febb-4389-9f24-d5cea2f8f437","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.690675} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.716808,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f62cf750-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","rebac_allow":false,"scope_allow":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":"f62cf750-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ddefe73-d9ff-4a34-92ad-82cc607c6ab4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.691611} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.463748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d","responseTime":139,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f62d1e60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","rebac_allow":false,"scope_allow":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":"f62d1e60-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f62cf750-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling 200 10ms","method":"POST","requestID":"f62cf750-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f62d1e60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling 200 11ms","method":"POST","requestID":"f62d1e60-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"bd1108c815334b1af055ee8006c70c57"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f62ecc10-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bd1108c815334b1af055ee8006c70c57","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd1108c815334b1af055ee8006c70c57"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610774,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bd1108c815334b1af055ee8006c70c57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"bd1108c815334b1af055ee8006c70c57","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cd70cb8-f2a0-4d99-a24d-a4d839df6282","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7017863} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.326484,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f62ecc10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f62ecc10-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"21d1282b-a428-4afe-af55-53e3066c4b0b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7049747} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f62ecc10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling 200 8ms","method":"POST","requestID":"f62ecc10-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bd1108c815334b1af055ee8006c70c57","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f63052b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f63079c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd1108c815334b1af055ee8006c70c57"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd1108c815334b1af055ee8006c70c57"} device-1 | {"level":"info","message":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 10ms","method":"GET","requestID":"bd1108c815334b1af055ee8006c70c57","responseTime":10,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.758508,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f63052b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f63052b0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.558377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f63079c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f63079c0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.345001306Z"}]},"request_id":"23be7892-380c-4b17-ba0e-4c64a3313b6f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7151852} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f63052b0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"7feab613-3118-4bd8-9c13-6fe925ed3637","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7159858} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f63079c0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721436,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f63052b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7b84defbf23c11a0b48f9b6fdaba69f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/11916498-9bbf-408a-aa3a-aebc8be98b13? 200 12ms","method":"GET","requestID":"f63052b0-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f63079c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 13ms","method":"GET","requestID":"f63079c0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:17.398948329Z"}]},"request_id":"3518cd53-a566-4c98-98a0-614c973d680c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7222114} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Building connection plan","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} 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":"fd6f582f-d359-4343-aa6d-da0696346742"},{"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":"8c0b1d54-c4dd-4024-ab6a-99004048d7e3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c5b98b16-10a9-49aa-a026-904004edecd6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2"} device-1 | {"level":"info","message":"GET /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32? 200 12ms","method":"GET","requestID":"7b84defbf23c11a0b48f9b6fdaba69f2","responseTime":12,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.793939,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f632eac0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f632eac0-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"dce7014a-fcea-4e9b-98b5-825a6498a1c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.735392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb2d8353-940f-46f1-bee7-110fed890e0c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7355835} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f632eac0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1'","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1'","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f632eac0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"f632eac0-793e-11ef-9733-5750b05365a5","responseTime":23,"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":"f632eac0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ddb258427fa2c7de1ad84501d2f6fa8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f63a3dc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"300bbe1b-cb54-4a88-92fc-f95dd34f7c35","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7770042} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.833388,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f63a3dc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f63a3dc0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f63a3dc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling 200 8ms","method":"POST","requestID":"f63a3dc0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f63bc460-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89c87d31-16a5-438a-945e-7b0e1d277821","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.7866988} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.415404,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f63bc460-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f63bc460-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f63bc460-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling 200 9ms","method":"POST","requestID":"f63bc460-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling"} device-1 | {"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2235705401703377463 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:eObt\r\na=ice-pwd:8Ypyd8+yeNRhcB0cUuQoJ4cK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D5:FE:A1:5B:CB:72:C5:46:4D:66:CB:17:8C:97:55:04:03:28:32:2F:E4:CF:17:CE:B8:EE:7C:5B:0C:49:26:83\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8963848872064081303 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:XIko\r\na=ice-pwd:HPknMNi1UfEF8GqAUhlXPx9u\r\na=ice-options:trickle\r\na=fingerprint:sha-256 00:32:51:68:3F:0A:2E:43:E8:53:7B:3D:C8:38:2B:A0:8B:01:6C:8F:FD:E7:01:40:85:D1:76:23:8A:EE:B1:28\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1106678770 1 udp 2113937151 b8f3185d-a8cf-42b0-a3e6-fa63788e3ea5.local 37229 typ host generation 0 ufrag XIko network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3319527821 1 udp 1677729535 141.24.211.56 37229 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag XIko network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","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/bc20efdd-369c-44cc-83f7-3ccdef381c32'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32'"} device-1 | {"content":{"candidate":"candidate:465965954 1 udp 2113937151 8a99093b-4dce-4bc3-bd94-bdd0c7baea67.local 39946 typ host generation 0 ufrag eObt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2297279121 1 udp 1677729535 141.24.211.56 39946 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eObt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","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/11916498-9bbf-408a-aa3a-aebc8be98b13'"} device-1 | {"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","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/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29eb2e51a130f71d0b20129dcf70f44e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"29eb2e51a130f71d0b20129dcf70f44e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"}}},"level":"info","message":"received a callback","requestID":"29eb2e51a130f71d0b20129dcf70f44e"} device-1 | {"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"29eb2e51a130f71d0b20129dcf70f44e","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"29eb2e51a130f71d0b20129dcf70f44e"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","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/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3026394acff13cdf24e3c27e452ad1d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3026394acff13cdf24e3c27e452ad1d5","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"}}},"level":"info","message":"received a callback","requestID":"3026394acff13cdf24e3c27e452ad1d5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f6478430-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca7fe4c2-2e95-450b-8498-1d18be0e3fd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3251a0fa-7ae5-4409-a1fa-47f4f15de9c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.8641887} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.724241,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6478430-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6478430-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f6478430-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1 200 8ms","method":"GET","requestID":"f6478430-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"3026394acff13cdf24e3c27e452ad1d5","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"3026394acff13cdf24e3c27e452ad1d5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f64bf100-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5efc368a-377c-465c-80ea-1b890b8b50bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.8917747} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.127552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f64bf100-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f64bf100-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f64bf100-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling 200 7ms","method":"POST","requestID":"f64bf100-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f64d5090-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eab01f4b-0f78-4a33-b57d-47d4214d9f0f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.9010715} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.104025,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f64d5090-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f64d5090-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f64d5090-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling 200 7ms","method":"POST","requestID":"f64d5090-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"f4650c44dc023d8c133b3e3c936e25f0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f4650c44dc023d8c133b3e3c936e25f0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","requestID":"f4650c44dc023d8c133b3e3c936e25f0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.855162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4650c44dc023d8c133b3e3c936e25f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4650c44dc023d8c133b3e3c936e25f0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","requestID":"f4650c44dc023d8c133b3e3c936e25f0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4650c44dc023d8c133b3e3c936e25f0"} experiment-1 | {"level":"info","message":"GET /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c 200 11ms","method":"GET","requestID":"f4650c44dc023d8c133b3e3c936e25f0","responseTime":11,"status":200,"url":"/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90","level":"info","message":"auth send jwt","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7eac6da81b0b858a8ab1b3c5703248a5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.983822,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7eac6da81b0b858a8ab1b3c5703248a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7eac6da81b0b858a8ab1b3c5703248a5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Attempting to finish experiment","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f6582600-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.643593,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6582600-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049679,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY3OX0.YN7RR7r1I8dS7nJYFYKmZXl71ZZKwHVRh7iFDrAbl90"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f6582600-793e-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","device":"11916498-9bbf-408a-aa3a-aebc8be98b13","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","device":"bc20efdd-369c-44cc-83f7-3ccdef381c32","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/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69fa2a4dce9da3d98a79429f8cadd26d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"69fa2a4dce9da3d98a79429f8cadd26d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26025e84d0904cf2fbb74b20ae4dbfb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"}}},"level":"info","message":"received a callback","requestID":"69fa2a4dce9da3d98a79429f8cadd26d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26025e84d0904cf2fbb74b20ae4dbfb3","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"}}},"level":"info","message":"received a callback","requestID":"26025e84d0904cf2fbb74b20ae4dbfb3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd4a0f66-67c8-4424-acca-9133829b112d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.9850552} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca7fe4c2-2e95-450b-8498-1d18be0e3fd1': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca7fe4c2-2e95-450b-8498-1d18be0e3fd1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"56618341-9473-4b36-95fa-1c33af170484","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049679.9853387} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f6582600-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ca7fe4c2-2e95-450b-8498-1d18be0e3fd1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f6582600-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1 204 32ms","method":"DELETE","requestID":"f6582600-793e-11ef-9733-5750b05365a5","responseTime":32,"status":204,"url":"/peerconnections/ca7fe4c2-2e95-450b-8498-1d18be0e3fd1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"},"level":"info","message":"Successfully finished experiment","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f65f2ae0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc20efdd-369c-44cc-83f7-3ccdef381c32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d33527a-f8c0-4f8e-b400-60f92b7eed80","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.0188704} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.244915,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f65f2ae0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f65f2ae0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f65f2ae0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling 200 9ms","method":"POST","requestID":"f65f2ae0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5a814a58-094d-419d-8651-a2cc9ca69e4c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5a814a58-094d-419d-8651-a2cc9ca69e4c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"10a8e9e6-8c35-4b05-9001-b334a03c8593","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.0258474} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f660d890-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4823c22c-4345-44bb-b11f-33d109171399","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.0262287} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7eac6da81b0b858a8ab1b3c5703248a5","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11916498-9bbf-408a-aa3a-aebc8be98b13","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0005b80-2f18-4265-92a4-f0af35dddb62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.0308678} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.197725,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f660d890-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f660d890-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f660d890-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling 200 9ms","method":"POST","requestID":"f660d890-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/11916498-9bbf-408a-aa3a-aebc8be98b13/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7eac6da81b0b858a8ab1b3c5703248a5"} experiment-1 | {"level":"info","message":"DELETE /experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c 204 139ms","method":"DELETE","requestID":"7eac6da81b0b858a8ab1b3c5703248a5","responseTime":139,"status":204,"url":"/experiments/5a814a58-094d-419d-8651-a2cc9ca69e4c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"69fa2a4dce9da3d98a79429f8cadd26d","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"69fa2a4dce9da3d98a79429f8cadd26d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"26025e84d0904cf2fbb74b20ae4dbfb3","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"26025e84d0904cf2fbb74b20ae4dbfb3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4MH0.Q_dppFW0AJcSnbaSdsWf5pNNU0j6WV2qg2QIJ3iph30","level":"info","message":"auth send jwt","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.03003,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049680,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4MH0.Q_dppFW0AJcSnbaSdsWf5pNNU0j6WV2qg2QIJ3iph30"} gateway-1 | {"time_local":"23/Sep/2024:00:01:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3282","request_time":"0.696","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":"9fade9262b66175ae18201426606a14f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3279","request_time":"0.676","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":"47a6abc4e9412a9216dc6a4eb131b09a"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bc20efdd-369c-44cc-83f7-3ccdef381c32' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/11916498-9bbf-408a-aa3a-aebc8be98b13' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a9273279-cd2e-4926-9c62-a09b501c2f8e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1194882} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b918d6e0-c80c-45d3-94d2-0be03fd4be44","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1229331} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f66a5c3f-a83d-4bde-a3db-b11534ad4ffd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.133659} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"088e768a-ed43-4d61-9ab3-dd36d6200e13","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1336784} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"9ea1deaf-69a0-4f4e-a6ff-3e4234ab8593","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1370502} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8"} gateway-1 | {"time_local":"23/Sep/2024:00:01:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"2beb8cbff65e27e1aeda8a73ac95a7a8","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4MH0.Q_dppFW0AJcSnbaSdsWf5pNNU0j6WV2qg2QIJ3iph30","level":"info","message":"auth send jwt","requestID":"749c3fc6512bb25a535189a3dfc7c309"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"749c3fc6512bb25a535189a3dfc7c309","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"749c3fc6512bb25a535189a3dfc7c309"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.604996,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"749c3fc6512bb25a535189a3dfc7c309","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049680,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4MH0.Q_dppFW0AJcSnbaSdsWf5pNNU0j6WV2qg2QIJ3iph30"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e67a95aa-5626-4cd9-af4f-b2e621c5f0be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1610093} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7517e31d-6beb-4a7a-a24d-ca128fb3803a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.16644} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"72130537-eb59-4f13-a90e-9085d6098061","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1813505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76e027bb-0044-4495-ba84-3a923d26d71e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.181477} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"e279bb83-8952-4a26-a7e6-723611b88945","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049680.1854215} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"749c3fc6512bb25a535189a3dfc7c309"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"749c3fc6512bb25a535189a3dfc7c309","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"749c3fc6512bb25a535189a3dfc7c309"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a080b59a3109ba60a4d83785be7cd04","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6a080b59a3109ba60a4d83785be7cd04","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/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":"6a080b59a3109ba60a4d83785be7cd04"} device-1 | {"level":"info","message":"OPTIONS /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/websocket 200 1ms","method":"OPTIONS","requestID":"6a080b59a3109ba60a4d83785be7cd04","responseTime":1,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"8f026074a6408f57f940f8ef76e19402"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8f026074a6408f57f940f8ef76e19402","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8f026074a6408f57f940f8ef76e19402"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ffd062e251e28afbb4924653219c257","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1ffd062e251e28afbb4924653219c257","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1ffd062e251e28afbb4924653219c257"} device-1 | {"level":"info","message":"OPTIONS /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket 200 1ms","method":"OPTIONS","requestID":"1ffd062e251e28afbb4924653219c257","responseTime":1,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8f026074a6408f57f940f8ef76e19402","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"c1b5dcf568640df578c2ce98bc7b2836"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f026074a6408f57f940f8ef76e19402","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c1b5dcf568640df578c2ce98bc7b2836","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c1b5dcf568640df578c2ce98bc7b2836"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651788,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c1b5dcf568640df578c2ce98bc7b2836","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c1b5dcf568640df578c2ce98bc7b2836","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8f026074a6408f57f940f8ef76e19402"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8f026074a6408f57f940f8ef76e19402"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/websocket 200 22ms","method":"POST","requestID":"8f026074a6408f57f940f8ef76e19402","responseTime":22,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c1b5dcf568640df578c2ce98bc7b2836"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket 200 26ms","method":"POST","requestID":"c1b5dcf568640df578c2ce98bc7b2836","responseTime":26,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c1b5dcf568640df578c2ce98bc7b2836"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9bb68d54b004883c1690a5e02ce65cfc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9bb68d54b004883c1690a5e02ce65cfc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"9bb68d54b004883c1690a5e02ce65cfc"} device-1 | {"level":"info","message":"OPTIONS /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 0ms","method":"OPTIONS","requestID":"9bb68d54b004883c1690a5e02ce65cfc","responseTime":0,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed495d0564b5e9f20f255d4f29ba7ee2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"patchDevicesByDeviceId called","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"ed495d0564b5e9f20f255d4f29ba7ee2","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ed495d0564b5e9f20f255d4f29ba7ee2"} device-1 | {"level":"info","message":"OPTIONS /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 1ms","method":"OPTIONS","requestID":"ed495d0564b5e9f20f255d4f29ba7ee2","responseTime":1,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958704,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"7c4b6b49caf1aab49520ac8602406f85"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7c4b6b49caf1aab49520ac8602406f85","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7c4b6b49caf1aab49520ac8602406f85"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"c7db6481-a446-4a39-8af9-f7792a85d4c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.2518713} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.488868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7c4b6b49caf1aab49520ac8602406f85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c4b6b49caf1aab49520ac8602406f85","responseTime":5,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be542200-6314-43d3-b6be-1804dc19337f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.2612214} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"dd76bd15-88dc-41b3-856b-a69fb2ab2bf1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.2627218} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7c4b6b49caf1aab49520ac8602406f85","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17c5c93c-0d9c-48e5-b9ca-ce7796de9234","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.2685013} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7c4b6b49caf1aab49520ac8602406f85","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"46e4b179-0229-4259-b79a-dbede9d5a449","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.277868} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41"} device-1 | {"level":"info","message":"PATCH /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 40ms","method":"PATCH","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41","responseTime":40,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9d5bded246b714c9d44f4d4ce2d2ac41"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"531e07b1-ea4f-491f-9409-d3197e5adb56","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.2883403} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c4b6b49caf1aab49520ac8602406f85","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7c4b6b49caf1aab49520ac8602406f85"} device-1 | {"level":"info","message":"PATCH /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 43ms","method":"PATCH","requestID":"7c4b6b49caf1aab49520ac8602406f85","responseTime":43,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"7c4b6b49caf1aab49520ac8602406f85"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"95b9b745d1c4acc7eb6f449e726737bd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95b9b745d1c4acc7eb6f449e726737bd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95b9b745d1c4acc7eb6f449e726737bd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692919,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"95b9b745d1c4acc7eb6f449e726737bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95b9b745d1c4acc7eb6f449e726737bd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"c915e4e7-3f8e-4302-b7f3-39e9b15f621b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.3085766} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95b9b745d1c4acc7eb6f449e726737bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95b9b745d1c4acc7eb6f449e726737bd"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95b9b745d1c4acc7eb6f449e726737bd"} device-1 | {"level":"info","message":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 12ms","method":"GET","requestID":"95b9b745d1c4acc7eb6f449e726737bd","responseTime":12,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04942,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5c6061cd4bf57b251f8d32ed9d76a94d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"683b2f54-3f98-4c0d-aa01-ef664636f454","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.3270836} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d"} device-1 | {"level":"info","message":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 13ms","method":"GET","requestID":"5c6061cd4bf57b251f8d32ed9d76a94d","responseTime":13,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.695742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f8b89c00b615ae28ab7e90990ccd6f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to run experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to book experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully booked experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7c71f50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7c74660-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660336,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7c71f50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f7c71f50-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242253,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7c74660-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7c74660-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"9d53f8c0-07e6-4c6d-a842-179e09cd38ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.3852184} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f7c71f50-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"fc39dc17-5c23-43c4-9143-7e74d8d91735","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.3867514} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f7c74660-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7c71f50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 17ms","method":"GET","requestID":"f7c71f50-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7c74660-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 17ms","method":"GET","requestID":"f7c74660-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Setting up experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully set up experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7d21bd0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully running experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799461,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07006,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.622116,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9011bd8-7fcb-4803-917e-69c19643235b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4514427} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d21bd0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","rebac_allow":false,"scope_allow":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":"f7d21bd0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"2857d015-653e-4ffe-a87b-09a623b9b91e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4576013} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7d21bd0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling 200 16ms","method":"POST","requestID":"f7d21bd0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"9b6c16d4-c080-47a3-adf9-cea24c44b24a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4617438} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7d50200-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 23ms","method":"GET","requestID":"f7d1cdb0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 25ms","method":"GET","requestID":"f7d1f4c0-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96ba0417-c2fe-4e05-8596-a91bc460f557","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4691803} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.304239,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d50200-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","rebac_allow":false,"scope_allow":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":"f7d50200-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7d61370-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7d50200-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling 200 10ms","method":"POST","requestID":"f7d50200-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd50a71d6-8185-420d-b416-9de34a1f7d0f#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd50a71d6-8185-420d-b416-9de34a1f7d0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"33566746-fa8e-4e69-b3be-d10e54fd766c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.47468} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41ff8fad-2a83-4ba7-8bfa-4448d4e3e332","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4751353} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6316cfd6-c623-48c1-bac0-359c0e2b49ef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4789762} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.58424,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d61370-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","rebac_allow":false,"scope_allow":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":"f7d61370-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7d61370-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling 200 12ms","method":"POST","requestID":"f7d61370-793e-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7d83650-793e-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a","responseTime":149,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"bf104020e956f26c1c888838d842330c"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09cc88b6-dc2c-4814-820d-3bac5d32b1b8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.4907825} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf104020e956f26c1c888838d842330c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.328324,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf104020e956f26c1c888838d842330c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7d83650-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7d83650-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.726989,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7d83650-793e-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bf104020e956f26c1c888838d842330c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling 200 10ms","method":"POST","requestID":"f7d83650-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf104020e956f26c1c888838d842330c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7da3220-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7da5930-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"5a6e4f1a-9145-420c-8a5c-88e36e4c701d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.50008} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf104020e956f26c1c888838d842330c","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918577,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866498,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7da3220-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7da3220-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7da5930-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7da5930-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf104020e956f26c1c888838d842330c"} device-1 | {"level":"info","message":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 14ms","method":"GET","requestID":"bf104020e956f26c1c888838d842330c","responseTime":14,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf104020e956f26c1c888838d842330c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.133625973Z"}]},"request_id":"f3b289e2-cd38-42b8-b44a-5f417f089f48","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5076337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f7da3220-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"fd7a4625-364a-471a-84e8-777e2c7015ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5090423} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"db48f40199d81cd6ea0ccc6beda11af9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7da5930-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"db48f40199d81cd6ea0ccc6beda11af9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db48f40199d81cd6ea0ccc6beda11af9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7da3220-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} device-1 | {"level":"info","message":"GET /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17? 200 16ms","method":"GET","requestID":"f7da3220-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7da5930-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} device-1 | {"level":"info","message":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 16ms","method":"GET","requestID":"f7da5930-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"db48f40199d81cd6ea0ccc6beda11af9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Building connection plan","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} 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":"99cc6579-2ce4-4c87-9095-fde40590e460"},{"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":"a2d38a17-b307-42a6-9c91-50e210bd4a84"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"afc03e29-c8f7-46dc-9d9c-07be62446027"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db48f40199d81cd6ea0ccc6beda11af9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:20.181320617Z"}]},"request_id":"cfc874da-27c0-45c3-b6aa-01a8d7f9d3c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5193014} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"db48f40199d81cd6ea0ccc6beda11af9","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.705646,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db48f40199d81cd6ea0ccc6beda11af9"} device-1 | {"level":"info","message":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? 200 12ms","method":"GET","requestID":"db48f40199d81cd6ea0ccc6beda11af9","responseTime":12,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db48f40199d81cd6ea0ccc6beda11af9"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"edfa7946-24ca-4685-9623-a8ec1c300c48","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5302205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7917da28-3be2-4628-9c9f-4d0fb2522454","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5305085} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e'","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e'","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f7dd3f60-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f8b89c00b615ae28ab7e90990ccd6f7a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7e50790-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcaf3fe4-3aa4-4428-833a-2a2839b835aa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5731936} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.232082,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7e50790-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7e50790-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7e50790-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling 200 8ms","method":"POST","requestID":"f7e50790-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7e66720-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82067baa-8363-4e6d-b06b-52ede2ab9ce3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.5828376} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.516981,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7e66720-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7e66720-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7e66720-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling 200 11ms","method":"POST","requestID":"f7e66720-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling"} device-1 | {"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1137471654893532748 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:glv0\r\na=ice-pwd:v5k8mhCVP4GV7qd4bAgDQ0Zo\r\na=ice-options:trickle\r\na=fingerprint:sha-256 43:28:D4:A6:18:0F:8F:1F:D4:A5:BA:C1:4E:B0:C8:F9:B4:4B:C4:3F:FA:61:66:81:C6:C6:AA:61:64:0B:AC:DF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1017432176199586221 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:y6EF\r\na=ice-pwd:OJIYqu1d4bIUSrzOx+11ZDo0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 27:BB:54:0B:AD:EE:36:EE:FF:72:56:2E:13:28:DE:C2:B4:39:4F:E7:B5:2C:97:09:EE:95:F5:09:CC:79:AE:15\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1110598014 1 udp 2113937151 692509f6-9180-4fd5-84a9-2bd2e07c5f43.local 37708 typ host generation 0 ufrag y6EF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3508125805 1 udp 1677729535 141.24.211.56 37708 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag y6EF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","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/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17'"} device-1 | {"content":{"candidate":"candidate:1676003257 1 udp 2113937151 13599cea-78b4-4bfd-b9df-b6dd1dddf45a.local 52115 typ host generation 0 ufrag glv0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3888688582 1 udp 1677729535 141.24.211.56 52115 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag glv0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","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/f7460075-a588-42c6-9ecd-bd4b1894df2d'"} device-1 | {"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","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/fc93c407-6ef8-42b0-84de-6e271b86b54e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7950311a70644e24aab11d6e83ac8016","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7950311a70644e24aab11d6e83ac8016","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"}}},"level":"info","message":"received a callback","requestID":"7950311a70644e24aab11d6e83ac8016"} device-1 | {"device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"7950311a70644e24aab11d6e83ac8016","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"7950311a70644e24aab11d6e83ac8016"} device-1 | {"device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","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/fc93c407-6ef8-42b0-84de-6e271b86b54e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9686b2b871c58e4472dd7de7c69bc80f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"9686b2b871c58e4472dd7de7c69bc80f","responseTime":0,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"}}},"level":"info","message":"received a callback","requestID":"9686b2b871c58e4472dd7de7c69bc80f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f7f226f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffc93c407-6ef8-42b0-84de-6e271b86b54e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05778a2f-bf10-483d-927c-3d38a260bcdf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.6600184} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.761212,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7f226f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7f226f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f7f226f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e 200 8ms","method":"GET","requestID":"f7f226f0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"9686b2b871c58e4472dd7de7c69bc80f","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"9686b2b871c58e4472dd7de7c69bc80f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7f6bad0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fecb2276-84e6-420d-9baa-6a21d73260a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.6895769} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.444361,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7f6bad0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7f6bad0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7f6bad0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling 200 8ms","method":"POST","requestID":"f7f6bad0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7f86880-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59af29e2-fc63-438a-877c-391a0fa96f5c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.700447} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.245929,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f7f86880-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7f86880-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7f86880-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling 200 8ms","method":"POST","requestID":"f7f86880-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"13dd7bcda4d721f274ff28902da043c7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"13dd7bcda4d721f274ff28902da043c7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","requestID":"13dd7bcda4d721f274ff28902da043c7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.238134,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"13dd7bcda4d721f274ff28902da043c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13dd7bcda4d721f274ff28902da043c7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","requestID":"13dd7bcda4d721f274ff28902da043c7"} experiment-1 | {"level":"info","message":"GET /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f 200 13ms","method":"GET","requestID":"13dd7bcda4d721f274ff28902da043c7","responseTime":13,"status":200,"url":"/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13dd7bcda4d721f274ff28902da043c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"e5349eaf403faaf12971712f533db944"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e5349eaf403faaf12971712f533db944","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","requestID":"e5349eaf403faaf12971712f533db944"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.659704,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5349eaf403faaf12971712f533db944","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5349eaf403faaf12971712f533db944","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Attempting to finish experiment","requestID":"e5349eaf403faaf12971712f533db944"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f802c8c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.058857,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f802c8c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f802c8c0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","device":"5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e","device":"f7460075-a588-42c6-9ecd-bd4b1894df2d","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/fc93c407-6ef8-42b0-84de-6e271b86b54e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"daf3faf7cf1fc59d90625f0359fa3750","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"daf3faf7cf1fc59d90625f0359fa3750","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"490a0b17cf0611f4357d18e894ea65e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffc93c407-6ef8-42b0-84de-6e271b86b54e': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffc93c407-6ef8-42b0-84de-6e271b86b54e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"c381b730-b706-4e3f-929c-777b76d2c3d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.7870986} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"}}},"level":"info","message":"received a callback","requestID":"daf3faf7cf1fc59d90625f0359fa3750"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"490a0b17cf0611f4357d18e894ea65e8","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02a4ad6b-7c53-45b4-ab31-69e5bb228a48","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.7872498} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"}}},"level":"info","message":"received a callback","requestID":"490a0b17cf0611f4357d18e894ea65e8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"f802c8c0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"fc93c407-6ef8-42b0-84de-6e271b86b54e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f802c8c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e 204 41ms","method":"DELETE","requestID":"f802c8c0-793e-11ef-9733-5750b05365a5","responseTime":41,"status":204,"url":"/peerconnections/fc93c407-6ef8-42b0-84de-6e271b86b54e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"},"level":"info","message":"Successfully finished experiment","requestID":"e5349eaf403faaf12971712f533db944"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f80c3ea0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26bc24ae-62e5-4654-befa-5f6c63c184b7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.8338406} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.114877,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f80c3ea0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17","object_type":"device","rebac_allow":false,"scope_allow":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":"f80c3ea0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f80c3ea0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling 200 14ms","method":"POST","requestID":"f80c3ea0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd50a71d6-8185-420d-b416-9de34a1f7d0f': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd50a71d6-8185-420d-b416-9de34a1f7d0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"29e4bde0-501a-461b-9b90-2cdb83b8bc7b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.8402362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0ee3fc7-4839-48cc-be87-b8707e2919f1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.8406396} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e5349eaf403faaf12971712f533db944","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f80ed6b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7460075-a588-42c6-9ecd-bd4b1894df2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5115b5ce-13c7-4346-99b7-f836be381eca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.848523} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f80ed6b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d","object_type":"device","rebac_allow":false,"scope_allow":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":"f80ed6b0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f80ed6b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling 200 11ms","method":"POST","requestID":"f80ed6b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f","requestID":"e5349eaf403faaf12971712f533db944"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e5349eaf403faaf12971712f533db944"} experiment-1 | {"level":"info","message":"DELETE /experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f 204 149ms","method":"DELETE","requestID":"e5349eaf403faaf12971712f533db944","responseTime":149,"status":204,"url":"/experiments/d50a71d6-8185-420d-b416-9de34a1f7d0f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"daf3faf7cf1fc59d90625f0359fa3750","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"daf3faf7cf1fc59d90625f0359fa3750"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"490a0b17cf0611f4357d18e894ea65e8","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"490a0b17cf0611f4357d18e894ea65e8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"f4b40ed207386af241a000c21bda1b27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f4b40ed207386af241a000c21bda1b27"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.707","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":"2e88428164310ef8274ac213f95593bb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3282","request_time":"0.700","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":"e0defbb2ca24f31dc7121f16f36c095a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.145547,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f4b40ed207386af241a000c21bda1b27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f7460075-a588-42c6-9ecd-bd4b1894df2d' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"59700dc0-bcb8-4141-a61c-87d218646715","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.943128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5f47e8c2-eeb8-42a0-bcb1-46df808a9e17' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc843d5b-ed8a-437e-aea3-dd30fcb42b91","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.948334} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"567c85c2-d90b-4bcb-9926-7c768816b7c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.9658613} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5e1f506-58bf-4574-92da-4c7146f61800","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.9658952} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"0194e967-c031-4b38-a383-16dca543b08b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.9705791} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f4b40ed207386af241a000c21bda1b27"} gateway-1 | {"time_local":"23/Sep/2024:00:01:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4b40ed207386af241a000c21bda1b27"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"f4b40ed207386af241a000c21bda1b27","responseTime":65,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI","level":"info","message":"auth send jwt","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.698002,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049682,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4Mn0.F2OnSHfBfng4TAOBALB1L8FXMB8vJ4JPomTSfQieenI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"99f5aa87-4b9f-4642-a379-3c8a69ffcf03","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049682.9959488} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40c1c630-9605-4f88-ba69-ca32b60fea2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.0011957} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"27f74649-2b5f-4b09-9549-b423d4fa74be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.0114884} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdbd30f1-e832-4159-8a9b-3322e255109b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.0116725} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"61957805-79bf-4157-bea1-9115ffb40d76","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.0175629} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"82d9a46ade84b79dd9a6b7e7d7f5671a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4M30.z-aJH1aqn55jswtLm_zCwgjDq00SYv7ZX2J49NDmLyM","level":"info","message":"auth send jwt","requestID":"50644414e9d007d66d9b1f227d2d047e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"50644414e9d007d66d9b1f227d2d047e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"50644414e9d007d66d9b1f227d2d047e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"50644414e9d007d66d9b1f227d2d047e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049683,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4M30.z-aJH1aqn55jswtLm_zCwgjDq00SYv7ZX2J49NDmLyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50644414e9d007d66d9b1f227d2d047e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"77e54818-e402-4d61-900d-327786c024b9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.5045567} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50644414e9d007d66d9b1f227d2d047e","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d310eb9-d5eb-40e7-8441-6780d1e1e6a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.509996} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"50644414e9d007d66d9b1f227d2d047e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"836bb101-9107-4af9-99cb-ccd0088363fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049683.521429} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50644414e9d007d66d9b1f227d2d047e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"50644414e9d007d66d9b1f227d2d047e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2a9728c6-3579-4b22-855d-b13c2a474114 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"50644414e9d007d66d9b1f227d2d047e"} device-1 | {"level":"info","message":"PATCH /devices/2a9728c6-3579-4b22-855d-b13c2a474114 200 29ms","method":"PATCH","requestID":"50644414e9d007d66d9b1f227d2d047e","responseTime":29,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4M30.z-aJH1aqn55jswtLm_zCwgjDq00SYv7ZX2J49NDmLyM","level":"info","message":"auth send jwt","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:23Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666803,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5c5e0db5ab6189f56c2bf28dfd387bad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049683,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4M30.z-aJH1aqn55jswtLm_zCwgjDq00SYv7ZX2J49NDmLyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad"} gateway-1 | {"time_local":"23/Sep/2024:00:01:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/websocket 200 14ms","method":"POST","requestID":"5c5e0db5ab6189f56c2bf28dfd387bad","responseTime":14,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"caf0c1eb4b0c6935bb407e1de9a350dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"caf0c1eb4b0c6935bb407e1de9a350dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/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":"caf0c1eb4b0c6935bb407e1de9a350dc"} device-1 | {"level":"info","message":"OPTIONS /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/websocket 200 1ms","method":"OPTIONS","requestID":"caf0c1eb4b0c6935bb407e1de9a350dc","responseTime":1,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"df9b8a81ce6759b1962aaa63f75d4051"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"df9b8a81ce6759b1962aaa63f75d4051","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"df9b8a81ce6759b1962aaa63f75d4051"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180031,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"df9b8a81ce6759b1962aaa63f75d4051","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df9b8a81ce6759b1962aaa63f75d4051","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"df9b8a81ce6759b1962aaa63f75d4051"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/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":"df9b8a81ce6759b1962aaa63f75d4051"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/websocket 200 22ms","method":"POST","requestID":"df9b8a81ce6759b1962aaa63f75d4051","responseTime":22,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8395835a895d3a40bc593f352f244ff2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8395835a895d3a40bc593f352f244ff2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8395835a895d3a40bc593f352f244ff2"} device-1 | {"level":"info","message":"OPTIONS /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 1ms","method":"OPTIONS","requestID":"8395835a895d3a40bc593f352f244ff2","responseTime":1,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"4e892de6ce98389ddf5e11619d98da46"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e892de6ce98389ddf5e11619d98da46","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4e892de6ce98389ddf5e11619d98da46"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4e892de6ce98389ddf5e11619d98da46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4e892de6ce98389ddf5e11619d98da46","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"69037994-6914-49dd-b6a1-7cbdc32e33cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.135102} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e892de6ce98389ddf5e11619d98da46","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f64db9a7-4109-4100-ada9-2935299bc989","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.1425803} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4e892de6ce98389ddf5e11619d98da46","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"0ee69d2f-a778-4b4e-9d4e-e3b513afa4c7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.1571636} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e892de6ce98389ddf5e11619d98da46","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4e892de6ce98389ddf5e11619d98da46"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","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":"4e892de6ce98389ddf5e11619d98da46"} device-1 | {"level":"info","message":"PATCH /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 40ms","method":"PATCH","requestID":"4e892de6ce98389ddf5e11619d98da46","responseTime":40,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"d528a83416ef3949b29578ddd3871bf2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d528a83416ef3949b29578ddd3871bf2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d528a83416ef3949b29578ddd3871bf2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d528a83416ef3949b29578ddd3871bf2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d528a83416ef3949b29578ddd3871bf2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"65165ac8-05b5-4580-bf51-42522e3fdfe2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.1854882} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d528a83416ef3949b29578ddd3871bf2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d528a83416ef3949b29578ddd3871bf2"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d528a83416ef3949b29578ddd3871bf2"} device-1 | {"level":"info","message":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 17ms","method":"GET","requestID":"d528a83416ef3949b29578ddd3871bf2","responseTime":17,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69196,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c1d9df32ea4b923961c33b1a36a4a4a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"e875a1a4-1d44-4289-9529-62bc41929ed8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.209431} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9"} device-1 | {"level":"info","message":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? 200 17ms","method":"GET","requestID":"c1d9df32ea4b923961c33b1a36a4a4a9","responseTime":17,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"b1565d2018d85487d48e2015c94e5072"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1565d2018d85487d48e2015c94e5072","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b1565d2018d85487d48e2015c94e5072"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.242043,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b1565d2018d85487d48e2015c94e5072","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b1565d2018d85487d48e2015c94e5072","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to run experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to book experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully booked experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f97f7db0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794702,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f97f7db0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f97f7db0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704215,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"a538f30b-f6ad-4564-ab9f-fc1baa8ba2b1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.2687335} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f97f7db0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"e1ee4aeb-0b00-4c36-8f07-ae49fcd68739","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.269985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f97f7db0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 14ms","method":"GET","requestID":"f97f7db0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? 200 15ms","method":"GET","requestID":"f97fa4c0-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Setting up experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully set up experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f988f390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f98941b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f98968c0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully running experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.771851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f988f390-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f988f390-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712186,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.251482,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f98941b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f98941b0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf31ea7f-2c85-4258-a39a-48dcc02428b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.330937} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f98968c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f98968c0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"21a1f97f-0b3e-46a3-a51c-dca8b91bd367","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.335578} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f98968c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling 200 14ms","method":"POST","requestID":"f98968c0-793e-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f988f390-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"873083ba-036c-402f-b62e-1004063584d3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.338726} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f98c00d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f98941b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f988f390-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 22ms","method":"GET","requestID":"f988f390-793e-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f98941b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? 200 23ms","method":"GET","requestID":"f98941b0-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d16c1717-7fbd-4718-8a27-c340150af212","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3468206} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.336127,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f98c00d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","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 called","requestID":"f98d1240-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f98c00d0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f98c00d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling 200 10ms","method":"POST","requestID":"f98c00d0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4db47509-679f-4302-9f07-44024f51c7cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3530908} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F743a25ec-c72e-4a01-a683-4b4ddf19da74#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F743a25ec-c72e-4a01-a683-4b4ddf19da74","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"bc2da7b3-e5a6-4b6e-9bdb-60582e16c36a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.353211} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cbbaf6f9-f23c-4638-ac32-93909c3bc77d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3535213} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.844768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f98d1240-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f98d1240-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"b1565d2018d85487d48e2015c94e5072","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f98d1240-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling 200 10ms","method":"POST","requestID":"f98d1240-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f98f3520-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b1565d2018d85487d48e2015c94e5072"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"b1565d2018d85487d48e2015c94e5072","responseTime":143,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61d16bd8-55d3-4b89-8bee-8d86e2d00198","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3665276} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.523678,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f98f3520-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f98f3520-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"badd002c64b62efecdef729f6db446a8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"badd002c64b62efecdef729f6db446a8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f98f3520-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling 200 8ms","method":"POST","requestID":"f98f3520-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"badd002c64b62efecdef729f6db446a8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f990bbc0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f990e2d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759675,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"badd002c64b62efecdef729f6db446a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"badd002c64b62efecdef729f6db446a8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.567622,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f990bbc0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f990bbc0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38466","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.583564,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f990e2d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f990e2d0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"42b85b34-73d1-4d90-b71b-56cdada97dc2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.379307} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"badd002c64b62efecdef729f6db446a8","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:22.965826220Z"}]},"request_id":"8291b799-e9c4-4b81-a908-47091341293f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3817134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f990bbc0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"54510d4a-f40d-44cd-a68e-5f564b006528","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3839881} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"badd002c64b62efecdef729f6db446a8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f990e2d0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"badd002c64b62efecdef729f6db446a8"} device-1 | {"level":"info","message":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 15ms","method":"GET","requestID":"badd002c64b62efecdef729f6db446a8","responseTime":15,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f990bbc0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8? 200 16ms","method":"GET","requestID":"f990bbc0-793e-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w","level":"info","message":"auth send jwt","requestID":"d69ae9af191c8328e375a0b9c672d166"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f990e2d0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d69ae9af191c8328e375a0b9c672d166","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? 200 17ms","method":"GET","requestID":"f990e2d0-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d69ae9af191c8328e375a0b9c672d166"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Building connection plan","requestID":"b1565d2018d85487d48e2015c94e5072"} 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":"3d0b23d2-d338-41e1-b8ca-38c9a121f301"},{"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":"5abf916c-9504-46c5-bc29-d847cb145d02"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"36b59ac3-f303-4a94-b175-83ab8a541ed4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b1565d2018d85487d48e2015c94e5072"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b1565d2018d85487d48e2015c94e5072"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021295,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d69ae9af191c8328e375a0b9c672d166","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d69ae9af191c8328e375a0b9c672d166","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"client_addr":"127.0.0.1:55684","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.612896,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f993c900-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049685,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4NX0.vkjrmsWnQKsV6DRACfc0IkCT5Y5LL-daCULsN4_jc8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f993c900-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:23.011459389Z"}]},"request_id":"fab27609-c459-4ff0-b420-7cf428d3c994","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.3989758} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d69ae9af191c8328e375a0b9c672d166","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d69ae9af191c8328e375a0b9c672d166"} gateway-1 | {"time_local":"23/Sep/2024:00:01:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d69ae9af191c8328e375a0b9c672d166"} device-1 | {"level":"info","message":"GET /devices/2a9728c6-3579-4b22-855d-b13c2a474114? 200 12ms","method":"GET","requestID":"d69ae9af191c8328e375a0b9c672d166","responseTime":12,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"af78bb89-c427-44ff-9b4e-ccdf13e9729f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.4039605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c33ce328-646b-4ad0-957d-898b64513e73","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.404866} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f993c900-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6'","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6'","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"f993c900-793e-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f993c900-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b1565d2018d85487d48e2015c94e5072"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f99b9130-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46b7237f-bd35-43ba-9b5f-ac6abd623d16","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.4473958} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.506461,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f99b9130-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f99b9130-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f99b9130-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling 200 10ms","method":"POST","requestID":"f99b9130-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f99d65f0-793e-11ef-9733-5750b05365a5"} device-1 | {"content":{"sdp":"v=0\r\no=- 1555707545659992865 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:vr3j\r\na=ice-pwd:qtamyZnU6GxS6Y701ja8cR/p\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3D:E9:0E:C9:77:86:23:41:F4:13:69:9A:18:BD:AA:C3:98:F3:A7:35:9B:12:58:68:47:E4:5F:2D:83:9C:BB:3C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a2b9d84-871e-45b9-89f0-dab78902a3aa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049685.4610026} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.923164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f99d65f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","rebac_allow":false,"scope_allow":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":"f99d65f0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f99d65f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling 200 10ms","method":"POST","requestID":"f99d65f0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling"} device-1 | {"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/d0a3af50-c52b-411d-a1b3-6261a37e32d6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e42dd5b6b00f6c3ac600bfd5ef157567","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e42dd5b6b00f6c3ac600bfd5ef157567","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"}}},"level":"info","message":"received a callback","requestID":"e42dd5b6b00f6c3ac600bfd5ef157567"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"e42dd5b6b00f6c3ac600bfd5ef157567","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"e42dd5b6b00f6c3ac600bfd5ef157567"} device-1 | {"content":{"candidate":"candidate:1380558956 1 udp 2113937151 753aa954-01f0-42b0-ba45-c79ec439fc48.local 59205 typ host generation 0 ufrag vr3j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3596927507 1 udp 1677729535 141.24.211.56 59205 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag vr3j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2238283160 1 udp 33562623 141.24.210.113 50723 typ relay raddr 141.24.211.56 rport 59205 generation 0 ufrag vr3j network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","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/b9d5114a-6a48-4c41-a076-2ece5e92b8a8'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8'"} device-1 | {"data":{"peerconnection":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","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/d0a3af50-c52b-411d-a1b3-6261a37e32d6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf74dac9426ce1d43a72d4a5031bcdea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"bf74dac9426ce1d43a72d4a5031bcdea","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"}}},"level":"info","message":"received a callback","requestID":"bf74dac9426ce1d43a72d4a5031bcdea"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"faddd530-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0a3af50-c52b-411d-a1b3-6261a37e32d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c65a929-28db-4b3b-a201-44bf0b72e75b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.561105} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.976885,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"faddd530-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"faddd530-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"faddd530-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6 200 10ms","method":"GET","requestID":"faddd530-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"bf74dac9426ce1d43a72d4a5031bcdea","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf74dac9426ce1d43a72d4a5031bcdea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fae2b730-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"710c22fc-a258-499d-a3ce-666caff7f73e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.5931954} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.342596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fae2b730-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","rebac_allow":false,"scope_allow":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":"fae2b730-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fae2b730-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling 200 11ms","method":"POST","requestID":"fae2b730-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fae4da10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6000bda7-7d17-4c0d-9891-937f827b9d55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.6056297} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.397601,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fae4da10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","rebac_allow":false,"scope_allow":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":"fae4da10-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fae4da10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling 200 8ms","method":"POST","requestID":"fae4da10-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw","level":"info","message":"auth send jwt","requestID":"2e23f13ff5f9342da90cf70a9c7774f7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e23f13ff5f9342da90cf70a9c7774f7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","requestID":"2e23f13ff5f9342da90cf70a9c7774f7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.126116,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2e23f13ff5f9342da90cf70a9c7774f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049687,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e23f13ff5f9342da90cf70a9c7774f7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","requestID":"2e23f13ff5f9342da90cf70a9c7774f7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e23f13ff5f9342da90cf70a9c7774f7"} experiment-1 | {"level":"info","message":"GET /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74 200 15ms","method":"GET","requestID":"2e23f13ff5f9342da90cf70a9c7774f7","responseTime":15,"status":200,"url":"/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw","level":"info","message":"auth send jwt","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.228183,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049687,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Attempting to finish experiment","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"faf1ab50-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.63997,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"faf1ab50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049687,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"faf1ab50-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6","device":"b9d5114a-6a48-4c41-a076-2ece5e92b8a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2a9728c6-3579-4b22-855d-b13c2a474114","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/d0a3af50-c52b-411d-a1b3-6261a37e32d6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0a3af50-c52b-411d-a1b3-6261a37e32d6': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0a3af50-c52b-411d-a1b3-6261a37e32d6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"fc5330d5-de58-4a60-b7d2-bf8ee1a3175d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.7074215} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ad459afa7025e059a1ea914927a36ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1ad459afa7025e059a1ea914927a36ea","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da13f6e5-c882-48bc-aed7-74318a1e9a56","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.707787} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"faf1ab50-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c753dab138f71e7d1faa17758b2765d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"}}},"level":"info","message":"received a callback","requestID":"1ad459afa7025e059a1ea914927a36ea"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c753dab138f71e7d1faa17758b2765d3","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"}}},"level":"info","message":"received a callback","requestID":"c753dab138f71e7d1faa17758b2765d3"} device-1 | {"data":{"peerconnection":"d0a3af50-c52b-411d-a1b3-6261a37e32d6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"faf1ab50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6 204 46ms","method":"DELETE","requestID":"faf1ab50-793e-11ef-9733-5750b05365a5","responseTime":46,"status":204,"url":"/peerconnections/d0a3af50-c52b-411d-a1b3-6261a37e32d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"},"level":"info","message":"Successfully finished experiment","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fafc0b90-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a9728c6-3579-4b22-855d-b13c2a474114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50434d41-a3f0-4005-950b-bf936114ece4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.760599} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.897444,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fafc0b90-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114","object_type":"device","rebac_allow":false,"scope_allow":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":"fafc0b90-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fafc0b90-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling 200 15ms","method":"POST","requestID":"fafc0b90-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/2a9728c6-3579-4b22-855d-b13c2a474114/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F743a25ec-c72e-4a01-a683-4b4ddf19da74': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F743a25ec-c72e-4a01-a683-4b4ddf19da74","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3a6283d7-c870-47f4-8e5b-bc2e0e84457e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.7689877} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57fc9a64-dfb9-4ef9-af6b-4f82dfbed8d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.7698224} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fafef1c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9d5114a-6a48-4c41-a076-2ece5e92b8a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f793e057-a317-4f25-8726-ed4627de59d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.7785861} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.839788,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fafef1c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8","object_type":"device","rebac_allow":false,"scope_allow":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":"fafef1c0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fafef1c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling 200 13ms","method":"POST","requestID":"fafef1c0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3624","request_time":"4.299","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a0c2a0a46fd75d727aa5624f1fc98b0e"} experiment-1 | {"level":"info","message":"DELETE /experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74 204 177ms","method":"DELETE","requestID":"b6b5e4e8c304c2bf1bb4ecc5ca31dabf","responseTime":177,"status":204,"url":"/experiments/743a25ec-c72e-4a01-a683-4b4ddf19da74"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"1ad459afa7025e059a1ea914927a36ea","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"1ad459afa7025e059a1ea914927a36ea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"c753dab138f71e7d1faa17758b2765d3","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"c753dab138f71e7d1faa17758b2765d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw","level":"info","message":"auth send jwt","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3089","request_time":"2.777","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":"f16c36ee9845fd96727475eca4e32036"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.353214,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049687,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2a9728c6-3579-4b22-855d-b13c2a474114' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b9d5114a-6a48-4c41-a076-2ece5e92b8a8' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"865cdffd-b58e-4b66-9783-25a1dd0689ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.8785074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a926abe2-69df-48f8-8bbd-a03df4dc51f0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.8836036} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8bd9ebc4-a253-4568-8576-e5c203bd3495","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.8930569} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59ec9f72-7bd9-4b78-bf94-8af088803953","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.893141} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"6759f344-2194-4336-8c36-1b26b6255969","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.8976185} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"083fbfbf593d7ac0281a6b9e2c7ae09b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw","level":"info","message":"auth send jwt","requestID":"84311057119ff0516303f88963738ec0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"84311057119ff0516303f88963738ec0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"84311057119ff0516303f88963738ec0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.721196,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"84311057119ff0516303f88963738ec0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049687,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4N30.xhDEwHg850EJNGLWs23U-WgLCX9UXYwUL-TVnARCqAw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"369089c4-690c-4ee1-80fb-2f63bf7591ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.9249918} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43e87e3f-186a-4217-9071-0667f2026bea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.929522} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"42f367f2-ee9a-4996-be38-2794bf043517","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.9396086} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddd09783-2a03-4a14-a511-e4c8ef69bedc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.9397094} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"4597743c-d0d2-4693-81fa-8748bc4a02d7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049687.943859} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"84311057119ff0516303f88963738ec0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84311057119ff0516303f88963738ec0"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"84311057119ff0516303f88963738ec0","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OH0.0OC239KRCmt_oCoSbAgjjk1GYPOnFFRsd9c81pgwuJI","level":"info","message":"auth send jwt","requestID":"faa892923dc5533c8eae366c0d612e1f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"faa892923dc5533c8eae366c0d612e1f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"faa892923dc5533c8eae366c0d612e1f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.083627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"faa892923dc5533c8eae366c0d612e1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049688,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OH0.0OC239KRCmt_oCoSbAgjjk1GYPOnFFRsd9c81pgwuJI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"faa892923dc5533c8eae366c0d612e1f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"702ef054-7207-4448-aba3-6f3ce399e3c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049688.4280622} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"faa892923dc5533c8eae366c0d612e1f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a5d16fe-f0f8-4f5a-a985-c534c3692ba6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049688.433651} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"faa892923dc5533c8eae366c0d612e1f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"a02ea673-9965-46d1-98b3-0c5b24b505fa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049688.446108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"faa892923dc5533c8eae366c0d612e1f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"faa892923dc5533c8eae366c0d612e1f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"faa892923dc5533c8eae366c0d612e1f"} device-1 | {"level":"info","message":"PATCH /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10 200 32ms","method":"PATCH","requestID":"faa892923dc5533c8eae366c0d612e1f","responseTime":32,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OH0.0OC239KRCmt_oCoSbAgjjk1GYPOnFFRsd9c81pgwuJI","level":"info","message":"auth send jwt","requestID":"328fc4d37f1e5bd2998146967b0f97b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"328fc4d37f1e5bd2998146967b0f97b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"328fc4d37f1e5bd2998146967b0f97b4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:28Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984345,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"328fc4d37f1e5bd2998146967b0f97b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049688,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OH0.0OC239KRCmt_oCoSbAgjjk1GYPOnFFRsd9c81pgwuJI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"328fc4d37f1e5bd2998146967b0f97b4","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"328fc4d37f1e5bd2998146967b0f97b4"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/websocket 200 19ms","method":"POST","requestID":"328fc4d37f1e5bd2998146967b0f97b4","responseTime":19,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"328fc4d37f1e5bd2998146967b0f97b4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"50443c5a1122fc79b5b488dd9baf3cde","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"50443c5a1122fc79b5b488dd9baf3cde","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/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":"50443c5a1122fc79b5b488dd9baf3cde"} device-1 | {"level":"info","message":"OPTIONS /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/websocket 200 1ms","method":"OPTIONS","requestID":"50443c5a1122fc79b5b488dd9baf3cde","responseTime":1,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OX0.Zdftafcu4Xq28rjCV3IVLI-suLg3l4Ter-omfNSdYaI","level":"info","message":"auth send jwt","requestID":"e68173ac30e8c473f9b461c5ab863d09"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e68173ac30e8c473f9b461c5ab863d09","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e68173ac30e8c473f9b461c5ab863d09"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:29Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277807,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e68173ac30e8c473f9b461c5ab863d09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049689,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY4OX0.Zdftafcu4Xq28rjCV3IVLI-suLg3l4Ter-omfNSdYaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e68173ac30e8c473f9b461c5ab863d09","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e68173ac30e8c473f9b461c5ab863d09"} gateway-1 | {"time_local":"23/Sep/2024:00:01:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e68173ac30e8c473f9b461c5ab863d09"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/websocket 200 21ms","method":"POST","requestID":"e68173ac30e8c473f9b461c5ab863d09","responseTime":21,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b17ca61d3c321f212615180dcf48b14","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6b17ca61d3c321f212615180dcf48b14","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"6b17ca61d3c321f212615180dcf48b14"} device-1 | {"level":"info","message":"OPTIONS /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 1ms","method":"OPTIONS","requestID":"6b17ca61d3c321f212615180dcf48b14","responseTime":1,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"47d78ac56224a3ce57ce9e213ca07b41"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"47d78ac56224a3ce57ce9e213ca07b41","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"47d78ac56224a3ce57ce9e213ca07b41"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.303291,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"47d78ac56224a3ce57ce9e213ca07b41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"47d78ac56224a3ce57ce9e213ca07b41","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"f258118d-b497-40be-9656-55213c5aabe4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.054976} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"47d78ac56224a3ce57ce9e213ca07b41","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb5c7b4a-a88c-4ecc-8a1b-c76a20fd7025","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.0629816} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"47d78ac56224a3ce57ce9e213ca07b41","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"23a9dd95-686d-4112-8caf-1d8e5b03539a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.075062} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"47d78ac56224a3ce57ce9e213ca07b41","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"47d78ac56224a3ce57ce9e213ca07b41"} device-1 | {"level":"info","message":"PATCH /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 38ms","method":"PATCH","requestID":"47d78ac56224a3ce57ce9e213ca07b41","responseTime":38,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"47d78ac56224a3ce57ce9e213ca07b41"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"4d9da3313e4460f12c37369f141e3326"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d9da3313e4460f12c37369f141e3326","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d9da3313e4460f12c37369f141e3326"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279788,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d9da3313e4460f12c37369f141e3326","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d9da3313e4460f12c37369f141e3326","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"b99ef34b-5d5d-4bc7-a571-7bbe324efc95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.104005} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d9da3313e4460f12c37369f141e3326","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d9da3313e4460f12c37369f141e3326"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d9da3313e4460f12c37369f141e3326"} device-1 | {"level":"info","message":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 16ms","method":"GET","requestID":"4d9da3313e4460f12c37369f141e3326","responseTime":16,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"651a31b3a327e876a1342bfb799f7fa2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"651a31b3a327e876a1342bfb799f7fa2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"651a31b3a327e876a1342bfb799f7fa2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"651a31b3a327e876a1342bfb799f7fa2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"651a31b3a327e876a1342bfb799f7fa2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"68675f4f-9b21-4c7e-a2df-5b4cd6e4b8c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.1186404} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"651a31b3a327e876a1342bfb799f7fa2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"651a31b3a327e876a1342bfb799f7fa2"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"651a31b3a327e876a1342bfb799f7fa2"} device-1 | {"level":"info","message":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? 200 9ms","method":"GET","requestID":"651a31b3a327e876a1342bfb799f7fa2","responseTime":9,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"1421035be558c53b5a1c646ef678f398"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1421035be558c53b5a1c646ef678f398","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1421035be558c53b5a1c646ef678f398"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.075557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1421035be558c53b5a1c646ef678f398","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1421035be558c53b5a1c646ef678f398","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to run experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to book experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully booked experiment","requestID":"1421035be558c53b5a1c646ef678f398"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc6c6470-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.16206,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc6c6470-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc6c6470-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342197,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"7ece8e1e-dd5b-4ac2-9c30-e0b8f52fb98b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.1786118} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fc6c6470-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"9b07c010-cad7-438b-9cf1-fcea4fed5e42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.185839} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc6c6470-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 21ms","method":"GET","requestID":"fc6c6470-793e-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? 200 23ms","method":"GET","requestID":"fc6c8b80-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Setting up experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully set up experiment","requestID":"1421035be558c53b5a1c646ef678f398"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc7739e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc778800-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc77d620-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully running experiment","requestID":"1421035be558c53b5a1c646ef678f398"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214516,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc7739e0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fc7739e0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978484,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc778800-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"fc778800-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59466","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"d446d978-d24c-4471-803d-e5749a432c55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2564871} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da4d711c-d57a-4d51-89d3-5cf9ad931ad2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2567775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"3bef5f59-9a88-4212-a0bb-6e555b7de6ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2578194} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fc778800-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:59466","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.818332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc77d620-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","rebac_allow":false,"scope_allow":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":"fc77d620-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc778800-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? 200 23ms","method":"GET","requestID":"fc778800-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fc7739e0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc77d620-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling 200 27ms","method":"POST","requestID":"fc77d620-793e-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc7739e0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 33ms","method":"GET","requestID":"fc7739e0-793e-11ef-9733-5750b05365a5","responseTime":33,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc7c6a00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc7cdf30-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8365ed6e-0f82-4af4-828d-f9e5109804e0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8365ed6e-0f82-4af4-828d-f9e5109804e0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"3843bf60-fbe2-4245-b6fd-2a13218738b6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2687724} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e6c9498-dc5c-4896-87df-a42716d8f583","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2690887} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"1421035be558c53b5a1c646ef678f398","responseTime":32,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"1421035be558c53b5a1c646ef678f398","responseTime":162,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1421035be558c53b5a1c646ef678f398"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.194966,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.526152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6313c03e-0b22-42ac-a489-5ccc44eb1609","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.2849326} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3113242-2c19-4b03-94dd-aec0264c17ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.287859} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc7c6a00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","rebac_allow":false,"scope_allow":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":"fc7c6a00-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"6ea0f442ef5878b8180a428770240835"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc7cdf30-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","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 4ms","method":"GET","requestID":"6ea0f442ef5878b8180a428770240835","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"fc7cdf30-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ea0f442ef5878b8180a428770240835"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc7c6a00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling 200 28ms","method":"POST","requestID":"fc7c6a00-793e-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc7cdf30-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling 200 25ms","method":"POST","requestID":"fc7cdf30-793e-11ef-9733-5750b05365a5","responseTime":25,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.621816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6ea0f442ef5878b8180a428770240835","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ea0f442ef5878b8180a428770240835","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc8124f0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"ac441b59-164f-4459-8bf5-83e62226502e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3072042} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"184e5a35-8f2a-45db-ab42-73e8b153f41c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3073301} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6ea0f442ef5878b8180a428770240835","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.711948,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc8124f0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc8124f0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ea0f442ef5878b8180a428770240835"} device-1 | {"level":"info","message":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 16ms","method":"GET","requestID":"6ea0f442ef5878b8180a428770240835","responseTime":16,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ea0f442ef5878b8180a428770240835"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc8124f0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling 200 10ms","method":"POST","requestID":"fc8124f0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA","level":"info","message":"auth send jwt","requestID":"600571d2e64b72bb422762dca001650d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"600571d2e64b72bb422762dca001650d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"600571d2e64b72bb422762dca001650d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91584,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59450","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.581287,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59466","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:59466","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.518162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"600571d2e64b72bb422762dca001650d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"600571d2e64b72bb422762dca001650d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.893009542Z"}]},"request_id":"31de8ba0-7083-4c4d-8a47-4990b187dfad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3248045} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"480be923-6ccb-48e4-9ef7-698a1328d2b4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3260512} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:27.939574790Z"}]},"request_id":"99f7e69f-bbe5-4fb3-9c2c-b75ae6c4f042","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.327176} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"600571d2e64b72bb422762dca001650d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913? 200 18ms","method":"GET","requestID":"fc82d2a0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? 200 18ms","method":"GET","requestID":"fc82f9b0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"600571d2e64b72bb422762dca001650d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"600571d2e64b72bb422762dca001650d"} device-1 | {"level":"info","message":"GET /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10? 200 17ms","method":"GET","requestID":"600571d2e64b72bb422762dca001650d","responseTime":17,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Building connection plan","requestID":"1421035be558c53b5a1c646ef678f398"} 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":"174b27b9-39e7-4bde-97b8-816184eb3877"},{"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":"aa95d487-f6df-4140-a5e7-9370a9e40999"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2b1cfbec-7709-483c-9fbd-6401af9c1073"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1421035be558c53b5a1c646ef678f398"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1421035be558c53b5a1c646ef678f398"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.803194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc862e00-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049690,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5MH0.5BGLC559dJ498ikd0Ga7LCqzQ3xyCzYy_fRfyiadWRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc862e00-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"d4794a85-6c1f-4503-918d-e24b9e51c8f5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3497546} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd1f6f73-53b2-47b0-bade-5bae39c34bec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3501468} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fc862e00-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586'","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586'","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fc862e00-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"fc862e00-793e-11ef-9733-5750b05365a5","responseTime":26,"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":"fc862e00-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1421035be558c53b5a1c646ef678f398"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc8e1d40-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"385f94b4-2ce2-40fb-8e2b-40c46fb551fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.3931148} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526951,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc8e1d40-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc8e1d40-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc8e1d40-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling 200 8ms","method":"POST","requestID":"fc8e1d40-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc8fcaf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:30Z"} device-1 | {"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efa32ff0-32f0-42f5-b0ff-11404c538071","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049690.40286} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.367411,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc8fcaf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc8fcaf0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc8fcaf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling 200 8ms","method":"POST","requestID":"fc8fcaf0-793e-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling"} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3444704175964702217 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:BTYJ\r\na=ice-pwd:ryJ/tLIVGmJVE2vkg6bgYZ5E\r\na=ice-options:trickle\r\na=fingerprint:sha-256 57:FF:BF:81:2F:1B:40:A7:7C:22:6A:30:B7:44:D8:76:74:34:9B:51:AB:41:3D:65:F5:BF:08:8B:BD:47:A6:AE\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:148898392 1 udp 2113937151 3d96b344-e011-4c2f-b84b-8913d864094f.local 35732 typ host generation 0 ufrag BTYJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2613814091 1 udp 1677729535 141.24.211.56 35732 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag BTYJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","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/c6497bed-ecd8-494f-a632-c7ec88e59586' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"357bc5e2c6f6e35b859e802ec76a043f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/f1814d9d-8afd-44c3-81df-2aa8a57e5913'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"357bc5e2c6f6e35b859e802ec76a043f","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"}}},"level":"info","message":"received a callback","requestID":"357bc5e2c6f6e35b859e802ec76a043f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"357bc5e2c6f6e35b859e802ec76a043f","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"357bc5e2c6f6e35b859e802ec76a043f"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","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/c6497bed-ecd8-494f-a632-c7ec88e59586' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9cee18e4e71868ac7f631a7c103138c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9cee18e4e71868ac7f631a7c103138c5","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"}}},"level":"info","message":"received a callback","requestID":"9cee18e4e71868ac7f631a7c103138c5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fdcb3120-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc6497bed-ecd8-494f-a632-c7ec88e59586","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a58ae455-9272-4d7b-92f4-cffbedcd7d4f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.471368} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.543721,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fdcb3120-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fdcb3120-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fdcb3120-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586 200 9ms","method":"GET","requestID":"fdcb3120-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"9cee18e4e71868ac7f631a7c103138c5","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"9cee18e4e71868ac7f631a7c103138c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fdcfec10-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b34eda41-efc0-4619-ac5e-5baf43ece67c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.5011199} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.574401,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fdcfec10-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fdcfec10-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fdcfec10-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling 200 9ms","method":"POST","requestID":"fdcfec10-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fdd199c0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9259e74b-380b-4583-a8ab-8aa81f84582f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.5124922} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.837477,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fdd199c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fdd199c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fdd199c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling 200 9ms","method":"POST","requestID":"fdd199c0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8","level":"info","message":"auth send jwt","requestID":"0fa98e704cca68b212ad2489f93298ea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fa98e704cca68b212ad2489f93298ea","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","requestID":"0fa98e704cca68b212ad2489f93298ea"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.257008,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fa98e704cca68b212ad2489f93298ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049692,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fa98e704cca68b212ad2489f93298ea","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","requestID":"0fa98e704cca68b212ad2489f93298ea"} experiment-1 | {"level":"info","message":"GET /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0 200 17ms","method":"GET","requestID":"0fa98e704cca68b212ad2489f93298ea","responseTime":17,"status":200,"url":"/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fa98e704cca68b212ad2489f93298ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8","level":"info","message":"auth send jwt","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c661c64db9ebc0857d12a2d1f31c788f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.312273,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c661c64db9ebc0857d12a2d1f31c788f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049692,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c661c64db9ebc0857d12a2d1f31c788f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Attempting to finish experiment","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fde018b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.709163,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fde018b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049692,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fde018b0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586","device":"f1814d9d-8afd-44c3-81df-2aa8a57e5913","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"26bdd7d7-31a8-4302-986d-5c9a87310e10","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/c6497bed-ecd8-494f-a632-c7ec88e59586' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b75886e6cca54a4fbbf813895d6d1446","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc6497bed-ecd8-494f-a632-c7ec88e59586': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc6497bed-ecd8-494f-a632-c7ec88e59586","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"1905edea-ada2-4bb5-96c1-26754dbd1519","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6240764} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b75886e6cca54a4fbbf813895d6d1446","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98351618-61da-404c-b6f5-61d057817b61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6243482} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"864e5a2395f62318fa8cf32516ae0763","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"864e5a2395f62318fa8cf32516ae0763","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"fde018b0-793e-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"}}},"level":"info","message":"received a callback","requestID":"b75886e6cca54a4fbbf813895d6d1446"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"}}},"level":"info","message":"received a callback","requestID":"864e5a2395f62318fa8cf32516ae0763"} device-1 | {"data":{"peerconnection":"c6497bed-ecd8-494f-a632-c7ec88e59586","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fde018b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586 204 41ms","method":"DELETE","requestID":"fde018b0-793e-11ef-9733-5750b05365a5","responseTime":41,"status":204,"url":"/peerconnections/c6497bed-ecd8-494f-a632-c7ec88e59586"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"},"level":"info","message":"Successfully finished experiment","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fde87d20-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1814d9d-8afd-44c3-81df-2aa8a57e5913","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"657b8f1c-98ed-4cb9-9f4b-4a7795045df8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6638403} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.322132,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fde87d20-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fde87d20-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fde87d20-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling 200 10ms","method":"POST","requestID":"fde87d20-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8365ed6e-0f82-4af4-828d-f9e5109804e0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8365ed6e-0f82-4af4-828d-f9e5109804e0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0589feb3-df86-418a-b4ad-4ca7d6717589","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6700053} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fdea2ad0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9aad6cac-1215-45bb-8033-006481d14852","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6702943} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"c661c64db9ebc0857d12a2d1f31c788f","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26bdd7d7-31a8-4302-986d-5c9a87310e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1a745a4-2cd8-47aa-b26c-0a53d258629f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.6747077} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.187105,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fdea2ad0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fdea2ad0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fdea2ad0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling 200 10ms","method":"POST","requestID":"fdea2ad0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/26bdd7d7-31a8-4302-986d-5c9a87310e10/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c661c64db9ebc0857d12a2d1f31c788f"} experiment-1 | {"level":"info","message":"DELETE /experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0 204 141ms","method":"DELETE","requestID":"c661c64db9ebc0857d12a2d1f31c788f","responseTime":141,"status":204,"url":"/experiments/8365ed6e-0f82-4af4-828d-f9e5109804e0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3230","request_time":"4.253","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3431505cb7647a1b6eaf81d2f66a2082"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"b75886e6cca54a4fbbf813895d6d1446","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"b75886e6cca54a4fbbf813895d6d1446"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"864e5a2395f62318fa8cf32516ae0763","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"864e5a2395f62318fa8cf32516ae0763"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8","level":"info","message":"auth send jwt","requestID":"a24920cc8314664c65fbdd18bf4a4497"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a24920cc8314664c65fbdd18bf4a4497","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a24920cc8314664c65fbdd18bf4a4497"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.744","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":"4e0661e94709619732b7f122eb5dbaff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.40611,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a24920cc8314664c65fbdd18bf4a4497","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049692,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","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/26bdd7d7-31a8-4302-986d-5c9a87310e10' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"94ad1743-1294-4271-bbbc-3628a5c230a5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.754172} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f1814d9d-8afd-44c3-81df-2aa8a57e5913' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"660729bb-cca1-47a7-a2bc-c2492a7ddaa6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.7586257} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"050d552f-725b-42af-9edb-7f120a5f6f49","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.7741182} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"619e3e21-4883-459b-9ff0-3f9e7f16d667","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.7742534} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"0e30eb16-9fac-40cd-b87d-64bab5c69735","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.7785807} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a24920cc8314664c65fbdd18bf4a4497"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a24920cc8314664c65fbdd18bf4a4497"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a24920cc8314664c65fbdd18bf4a4497","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8","level":"info","message":"auth send jwt","requestID":"de86dfe189d61b0245db76bfcd82d524"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"de86dfe189d61b0245db76bfcd82d524","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"de86dfe189d61b0245db76bfcd82d524"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.995233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de86dfe189d61b0245db76bfcd82d524","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049692,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5Mn0.YvEbP6Rf1Euq46bn2xF5XyuEI4gBQvkSqa17DrnDBE8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a35e4951-87b1-4e87-9086-f71292775f57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.804278} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a83fa860-a74f-4607-8d42-77dc1d4102b6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.8088267} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"41f0d99a-cd35-48bd-a537-b1ca176abb79","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.8195686} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cbba5768-d723-4615-a9d7-0e17df79991b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.8198302} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"f3d6ff02-cb74-4f6a-935f-5ae9fc864c21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049692.8238864} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"de86dfe189d61b0245db76bfcd82d524"} gateway-1 | {"time_local":"23/Sep/2024:00:01:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de86dfe189d61b0245db76bfcd82d524"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"de86dfe189d61b0245db76bfcd82d524","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5M30.DZdVWXxdcw-MHRLNHAo_u3Qs72-Mb9JOZ3O1_8TSiXo","level":"info","message":"auth send jwt","requestID":"ed3756ba3db2192732929c8db6f4f26c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed3756ba3db2192732929c8db6f4f26c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ed3756ba3db2192732929c8db6f4f26c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ed3756ba3db2192732929c8db6f4f26c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049693,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5M30.DZdVWXxdcw-MHRLNHAo_u3Qs72-Mb9JOZ3O1_8TSiXo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed3756ba3db2192732929c8db6f4f26c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"ac869715-b1ca-450c-bdfe-50bc193041b5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049693.3080955} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed3756ba3db2192732929c8db6f4f26c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49d61663-d32a-44f5-aef0-ce4b2737f2ff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049693.3136117} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ed3756ba3db2192732929c8db6f4f26c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"af1173a7-6298-4616-800f-3ba7379c0a70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049693.3258324} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed3756ba3db2192732929c8db6f4f26c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ed3756ba3db2192732929c8db6f4f26c"} device-1 | {"level":"info","message":"PATCH /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7 200 32ms","method":"PATCH","requestID":"ed3756ba3db2192732929c8db6f4f26c","responseTime":32,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ed3756ba3db2192732929c8db6f4f26c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5M30.DZdVWXxdcw-MHRLNHAo_u3Qs72-Mb9JOZ3O1_8TSiXo","level":"info","message":"auth send jwt","requestID":"b4b6210ac7b6a08393d747d6f6332938"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4b6210ac7b6a08393d747d6f6332938","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b4b6210ac7b6a08393d747d6f6332938"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:33Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896924,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b4b6210ac7b6a08393d747d6f6332938","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049693,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5M30.DZdVWXxdcw-MHRLNHAo_u3Qs72-Mb9JOZ3O1_8TSiXo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b4b6210ac7b6a08393d747d6f6332938","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b4b6210ac7b6a08393d747d6f6332938"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/websocket 200 17ms","method":"POST","requestID":"b4b6210ac7b6a08393d747d6f6332938","responseTime":17,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b4b6210ac7b6a08393d747d6f6332938"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"023d3b323e307ab3c9390b6b7248cbc6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"023d3b323e307ab3c9390b6b7248cbc6","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/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":"023d3b323e307ab3c9390b6b7248cbc6"} device-1 | {"level":"info","message":"OPTIONS /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/websocket 200 2ms","method":"OPTIONS","requestID":"023d3b323e307ab3c9390b6b7248cbc6","responseTime":2,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4","level":"info","message":"auth send jwt","requestID":"003d9b133d810569a8434e7b7c5f4fa4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"003d9b133d810569a8434e7b7c5f4fa4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"003d9b133d810569a8434e7b7c5f4fa4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224543,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"003d9b133d810569a8434e7b7c5f4fa4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049694,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"003d9b133d810569a8434e7b7c5f4fa4","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"003d9b133d810569a8434e7b7c5f4fa4"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/websocket 200 23ms","method":"POST","requestID":"003d9b133d810569a8434e7b7c5f4fa4","responseTime":23,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"003d9b133d810569a8434e7b7c5f4fa4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"499a9f12b3db63b46af837782028fbf8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"499a9f12b3db63b46af837782028fbf8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"499a9f12b3db63b46af837782028fbf8"} device-1 | {"level":"info","message":"OPTIONS /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 1ms","method":"OPTIONS","requestID":"499a9f12b3db63b46af837782028fbf8","responseTime":1,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4","level":"info","message":"auth send jwt","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049694,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"c7909610-a22b-42a7-8e18-28bc3e095de4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049694.9498415} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"192d49f1-9fe4-4c68-b377-9de43d847d1c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049694.9573495} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"56d82c60-5ca3-4eff-b4d9-e037d129c806","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049694.9732468} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","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":"f49688ed600f3c2fb398d3bf2c3fd15a"} device-1 | {"level":"info","message":"PATCH /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 41ms","method":"PATCH","requestID":"f49688ed600f3c2fb398d3bf2c3fd15a","responseTime":41,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4","level":"info","message":"auth send jwt","requestID":"b3536f2cc157970a714a690c8274dd8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3536f2cc157970a714a690c8274dd8b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3536f2cc157970a714a690c8274dd8b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330294,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b3536f2cc157970a714a690c8274dd8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049694,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NH0.VdFZdnJZBKv12WxFnA0gLYqUCZ1iViKgTzKzkxHkCU4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3536f2cc157970a714a690c8274dd8b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"9d363b3f-9af6-44a9-81b0-5c7aa67f45a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.0016258} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3536f2cc157970a714a690c8274dd8b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3536f2cc157970a714a690c8274dd8b"} device-1 | {"level":"info","message":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? 200 17ms","method":"GET","requestID":"b3536f2cc157970a714a690c8274dd8b","responseTime":17,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3536f2cc157970a714a690c8274dd8b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8","level":"info","message":"auth send jwt","requestID":"9db90394692fc056cecddd41177da7ac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9db90394692fc056cecddd41177da7ac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9db90394692fc056cecddd41177da7ac"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.644365,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9db90394692fc056cecddd41177da7ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9db90394692fc056cecddd41177da7ac","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"324cbaaa-ba7e-4820-aed9-f081cade5944","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.0264144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9db90394692fc056cecddd41177da7ac","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9db90394692fc056cecddd41177da7ac"} gateway-1 | {"time_local":"23/Sep/2024:00:01:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9db90394692fc056cecddd41177da7ac"} device-1 | {"level":"info","message":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 18ms","method":"GET","requestID":"9db90394692fc056cecddd41177da7ac","responseTime":18,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8","level":"info","message":"auth send jwt","requestID":"d1776cd6b6b190c0dd624537a52310e3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1776cd6b6b190c0dd624537a52310e3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d1776cd6b6b190c0dd624537a52310e3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.33456,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d1776cd6b6b190c0dd624537a52310e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1776cd6b6b190c0dd624537a52310e3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to run experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to book experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully booked experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144651,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.029152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"8c770b14-0d85-4e83-a2f8-c32e7f63d3c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.0951571} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"f1b25d0c-b35a-4b6d-8b57-8f2a44bdd813","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1000638} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? 200 18ms","method":"GET","requestID":"ff5a83b0-793e-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 19ms","method":"GET","requestID":"ff5ad1d0-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Setting up experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully set up experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff655920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff658030-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff65ce50-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully running experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270554,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff655920-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ff655920-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929923,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff658030-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ff658030-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56376","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"2706f8d6-e917-4493-8a63-f1585e3ee830","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1679924} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97e321cd-ec8b-45dd-aeb3-a11faa33fa4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1682649} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff658030-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56376","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.854048,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"9ac36eb6-dc36-4d81-8b98-37c740ef9b3e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1693423} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff65ce50-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","rebac_allow":false,"scope_allow":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":"ff65ce50-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff655920-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff658030-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 20ms","method":"GET","requestID":"ff658030-793e-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff65ce50-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling 200 19ms","method":"POST","requestID":"ff65ce50-793e-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff655920-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? 200 23ms","method":"GET","requestID":"ff655920-793e-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6902a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6929b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d64bec-1444-4e12-a6cc-7dcf08b3567a#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d64bec-1444-4e12-a6cc-7dcf08b3567a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"4ce1d50e-d55f-42ee-bc84-7237d893f921","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1808538} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af7cdd2a-1996-4c23-aa9b-6bc68e117001","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1811295} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"d1776cd6b6b190c0dd624537a52310e3","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e24eceb-b95e-4051-89bf-708031628886","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.1844614} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54e5cbd1-6583-4ff3-8824-712933563512","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.185369} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.540219,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.967088,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff6902a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","rebac_allow":false,"scope_allow":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":"ff6902a0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff6929b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","rebac_allow":false,"scope_allow":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":"ff6929b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"d1776cd6b6b190c0dd624537a52310e3","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6902a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling 200 13ms","method":"POST","requestID":"ff6902a0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6929b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling 200 13ms","method":"POST","requestID":"ff6929b0-793e-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:01:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1776cd6b6b190c0dd624537a52310e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff6b73a0-793e-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8","level":"info","message":"auth send jwt","requestID":"58beb30056c9645d1826b87e1fd3b60b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"58beb30056c9645d1826b87e1fd3b60b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58beb30056c9645d1826b87e1fd3b60b"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99bb92bd-4552-490e-87aa-9a3f04b39ca5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.198994} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.546061,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff6b73a0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","rebac_allow":false,"scope_allow":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":"ff6b73a0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"58beb30056c9645d1826b87e1fd3b60b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58beb30056c9645d1826b87e1fd3b60b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff6b73a0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling 200 10ms","method":"POST","requestID":"ff6b73a0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"bdcf15f9-9287-4c57-9b3e-0a4ee89405c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.2053223} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"58beb30056c9645d1826b87e1fd3b60b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff6d4860-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff6d9680-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58beb30056c9645d1826b87e1fd3b60b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681968,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58beb30056c9645d1826b87e1fd3b60b"} device-1 | {"level":"info","message":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? 200 14ms","method":"GET","requestID":"58beb30056c9645d1826b87e1fd3b60b","responseTime":14,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff6d4860-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff6d4860-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56362","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.757781,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff6d9680-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff6d9680-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8","level":"info","message":"auth send jwt","requestID":"5482af6e0dbc7410ec1ceba944f80dc9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5482af6e0dbc7410ec1ceba944f80dc9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5482af6e0dbc7410ec1ceba944f80dc9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.774086630Z"}]},"request_id":"bd2ab87f-2170-4a6f-b90c-fee2d1334068","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.2167442} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff6d4860-793e-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"3e8cb23b-e6ff-492b-833f-67e1228187c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.218012} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff6d4860-793e-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff6d9680-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} device-1 | {"level":"info","message":"GET /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7? 200 15ms","method":"GET","requestID":"ff6d4860-793e-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803172,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5482af6e0dbc7410ec1ceba944f80dc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5482af6e0dbc7410ec1ceba944f80dc9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff6d9680-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 17ms","method":"GET","requestID":"ff6d9680-793e-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:32.819530427Z"}]},"request_id":"48a10efb-a020-4fb3-b556-1ab8f7d3c863","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.226188} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Building connection plan","requestID":"d1776cd6b6b190c0dd624537a52310e3"} 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":"0630cb56-bfd5-443e-aa94-41d431ef63f0"},{"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":"9e5c9674-0aaf-4ff8-af63-bd15e2fe8bfc"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"bb6d4a9f-019f-433f-80dc-d32209034e08"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d1776cd6b6b190c0dd624537a52310e3"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d1776cd6b6b190c0dd624537a52310e3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5482af6e0dbc7410ec1ceba944f80dc9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5482af6e0dbc7410ec1ceba944f80dc9"} gateway-1 | {"time_local":"23/Sep/2024:00:01:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5482af6e0dbc7410ec1ceba944f80dc9"} device-1 | {"level":"info","message":"GET /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b? 200 15ms","method":"GET","requestID":"5482af6e0dbc7410ec1ceba944f80dc9","responseTime":15,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.72644,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049695,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5NX0.rmTn6GE-aAgcocxLp9880WEk4QfpNMN2IFHewrRn4u8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"300502e4-e59a-4363-bb3b-f50799ea553c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.239555} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"190589e3-bee9-49d1-b276-d143d861b968","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.2398715} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38'","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38'","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"ff70a3c0-793e-11ef-9733-5750b05365a5","responseTime":24,"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":"ff70a3c0-793e-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d1776cd6b6b190c0dd624537a52310e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff786bf0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2278c18-2fad-4e58-b2d6-8b5238af155b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.2851615} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.969296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff786bf0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","rebac_allow":false,"scope_allow":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":"ff786bf0-793e-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff786bf0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling 200 10ms","method":"POST","requestID":"ff786bf0-793e-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff7a40b0-793e-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"947d1f02-b3ea-4489-8de0-a773ec9c2fb5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049695.2960906} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.613794,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ff7a40b0-793e-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","rebac_allow":false,"scope_allow":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":"ff7a40b0-793e-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff7a40b0-793e-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling 200 11ms","method":"POST","requestID":"ff7a40b0-793e-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3642880896790395668 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:T8hV\r\na=ice-pwd:H3TtwPYzVJPzfAhgHu13OKMZ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CB:94:A7:F5:03:9C:91:04:7E:8A:D0:AE:60:3C:E9:03:3E:95:67:5B:8C:8F:A3:76:53:B8:E4:50:D9:B6:75:A3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/3b779ab1-cc53-4e2b-a73a-1e0164383d38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f65b37745cfb9aae53a0773768ef509","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4f65b37745cfb9aae53a0773768ef509","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"}}},"level":"info","message":"received a callback","requestID":"4f65b37745cfb9aae53a0773768ef509"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"4f65b37745cfb9aae53a0773768ef509","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f65b37745cfb9aae53a0773768ef509"} device-1 | {"content":{"candidate":"candidate:4075313437 1 udp 2113937151 595e0a53-6dd5-43da-8b14-76e343d48001.local 50784 typ host generation 0 ufrag T8hV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1640232974 1 udp 1677729535 141.24.211.56 50784 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag T8hV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3756999676 1 udp 33562623 141.24.210.113 60911 typ relay raddr 141.24.211.56 rport 50784 generation 0 ufrag T8hV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","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/6172f126-aaee-4dbb-bd35-3f7024c0de5b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b'"} device-1 | {"data":{"peerconnection":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","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/3b779ab1-cc53-4e2b-a73a-1e0164383d38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"90b54b24d2766c494fdcf80ede76756d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"90b54b24d2766c494fdcf80ede76756d","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"}}},"level":"info","message":"received a callback","requestID":"90b54b24d2766c494fdcf80ede76756d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"00bb7340-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3b779ab1-cc53-4e2b-a73a-1e0164383d38","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"509a20ae-3c5e-448d-a397-309dde0a0a7c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.4017513} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.765188,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00bb7340-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38","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":"00bb7340-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"00bb7340-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38 200 9ms","method":"GET","requestID":"00bb7340-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"90b54b24d2766c494fdcf80ede76756d","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"90b54b24d2766c494fdcf80ede76756d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00c05540-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b29f2b5f-1da3-4006-bea4-fd6ff08a0466","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.4331808} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.602704,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00c05540-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","rebac_allow":false,"scope_allow":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":"00c05540-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00c05540-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling 200 10ms","method":"POST","requestID":"00c05540-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00c22a00-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ae8e942-3047-4c20-b5fb-9974bf19d995","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.4456053} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.893954,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00c22a00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","rebac_allow":false,"scope_allow":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":"00c22a00-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00c22a00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling 200 11ms","method":"POST","requestID":"00c22a00-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc","level":"info","message":"auth send jwt","requestID":"edbc59fc530fd20b85bf22a45a48d50e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"edbc59fc530fd20b85bf22a45a48d50e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","requestID":"edbc59fc530fd20b85bf22a45a48d50e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.237105,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"edbc59fc530fd20b85bf22a45a48d50e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049697,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"edbc59fc530fd20b85bf22a45a48d50e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","requestID":"edbc59fc530fd20b85bf22a45a48d50e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edbc59fc530fd20b85bf22a45a48d50e"} experiment-1 | {"level":"info","message":"GET /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a 200 15ms","method":"GET","requestID":"edbc59fc530fd20b85bf22a45a48d50e","responseTime":15,"status":200,"url":"/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc","level":"info","message":"auth send jwt","requestID":"9b1051fdda71d192ff16cc4c28c83208"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b1051fdda71d192ff16cc4c28c83208","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","requestID":"9b1051fdda71d192ff16cc4c28c83208"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.542537,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9b1051fdda71d192ff16cc4c28c83208","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049697,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9b1051fdda71d192ff16cc4c28c83208","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Attempting to finish experiment","requestID":"9b1051fdda71d192ff16cc4c28c83208"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"00d033c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.286276,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00d033c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049697,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00d033c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38","device":"6172f126-aaee-4dbb-bd35-3f7024c0de5b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/3b779ab1-cc53-4e2b-a73a-1e0164383d38' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3b779ab1-cc53-4e2b-a73a-1e0164383d38': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3b779ab1-cc53-4e2b-a73a-1e0164383d38","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3d05ca8c-2edd-4317-a04d-97e458776772","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.5590568} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98952b12a6764f52274d184cb342a1d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd542abf-face-44d2-8fde-2e5ea999c673","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.5597427} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"98952b12a6764f52274d184cb342a1d6","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"00d033c0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"932ac878e5a77a45c35cbd9c4040c435","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"}}},"level":"info","message":"received a callback","requestID":"98952b12a6764f52274d184cb342a1d6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"932ac878e5a77a45c35cbd9c4040c435","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"}}},"level":"info","message":"received a callback","requestID":"932ac878e5a77a45c35cbd9c4040c435"} device-1 | {"data":{"peerconnection":"3b779ab1-cc53-4e2b-a73a-1e0164383d38","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"00d033c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38 204 53ms","method":"DELETE","requestID":"00d033c0-793f-11ef-9733-5750b05365a5","responseTime":53,"status":204,"url":"/peerconnections/3b779ab1-cc53-4e2b-a73a-1e0164383d38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"},"level":"info","message":"Successfully finished experiment","requestID":"9b1051fdda71d192ff16cc4c28c83208"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00dba570-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0082e6ef-b113-4d37-85f0-48bd87c8889c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.6145058} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.11202,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00dba570-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7","object_type":"device","rebac_allow":false,"scope_allow":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":"00dba570-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00dba570-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling 200 15ms","method":"POST","requestID":"00dba570-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d64bec-1444-4e12-a6cc-7dcf08b3567a': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d64bec-1444-4e12-a6cc-7dcf08b3567a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0f7cc57a-ac38-49cb-a511-0237583ec759","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.6215134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07d5ccdd-f4b9-4364-80b9-b9de00125e32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.622367} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00de6490-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"9b1051fdda71d192ff16cc4c28c83208","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6172f126-aaee-4dbb-bd35-3f7024c0de5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54451f5a-f609-4a76-9c98-f977872f860c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.632906} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.983316,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"00de6490-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b","object_type":"device","rebac_allow":false,"scope_allow":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":"00de6490-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00de6490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling 200 15ms","method":"POST","requestID":"00de6490-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a","requestID":"9b1051fdda71d192ff16cc4c28c83208"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b1051fdda71d192ff16cc4c28c83208"} experiment-1 | {"level":"info","message":"DELETE /experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a 204 183ms","method":"DELETE","requestID":"9b1051fdda71d192ff16cc4c28c83208","responseTime":183,"status":204,"url":"/experiments/b0d64bec-1444-4e12-a6cc-7dcf08b3567a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3626","request_time":"4.345","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"af55f334f8b5c03fe64b23b0d870295b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"98952b12a6764f52274d184cb342a1d6","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"98952b12a6764f52274d184cb342a1d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"932ac878e5a77a45c35cbd9c4040c435","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"932ac878e5a77a45c35cbd9c4040c435"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc","level":"info","message":"auth send jwt","requestID":"34c2236b55a44156c1b254aa4431f48d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"34c2236b55a44156c1b254aa4431f48d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.506874,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3087","request_time":"2.816","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":"46a1dd98f5709d78ce69a66aeefcf501"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"34c2236b55a44156c1b254aa4431f48d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049697,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","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/8c8eed86-abb7-4a3b-a1ec-e1d6090618c7' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a59b2b2d-415c-4d7a-a531-bdff0b4d5848","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.722067} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6172f126-aaee-4dbb-bd35-3f7024c0de5b' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17f3e679-161e-492b-aee8-26d3b410d7ac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.726352} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"50d920d6-5d53-4046-b808-97a7df1399a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.7356477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"685313e5-7e3e-4859-a0bf-cccbe1693625","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.73581} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"946fe379-7117-4854-a79e-d309e2fb935a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.7397246} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"34c2236b55a44156c1b254aa4431f48d"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"34c2236b55a44156c1b254aa4431f48d","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34c2236b55a44156c1b254aa4431f48d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc","level":"info","message":"auth send jwt","requestID":"4fcfc66dd71c5c9e017a0cfec8579960"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4fcfc66dd71c5c9e017a0cfec8579960"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.832365,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4fcfc66dd71c5c9e017a0cfec8579960","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049697,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5N30.DIkiMZhkr4WgN2gym7Lk-lmYZVIETXY-ksy9h1zXIkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eb3f7c6d-98ae-45ab-9629-c5bfb8ffd101","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.7689013} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ea5c829-5514-478d-9107-7b8759b1a931","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.7734067} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c9a9e236-daa0-4349-b4d4-53346ed633cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.78512} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"143f76fb-0f4a-4684-8b4d-c45becaf3607","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.7853305} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"5801b18c-3739-4c0d-aaa1-4794d91e64a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049697.789456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4fcfc66dd71c5c9e017a0cfec8579960"} gateway-1 | {"time_local":"23/Sep/2024:00:01:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4fcfc66dd71c5c9e017a0cfec8579960"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"4fcfc66dd71c5c9e017a0cfec8579960","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OH0.PuOWJ4r-IUFS6unPZxvRVLLB6hv-z9MRXco-pyeivUk","level":"info","message":"auth send jwt","requestID":"e58badee1b7c6a597cf4186e41d24963"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e58badee1b7c6a597cf4186e41d24963","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e58badee1b7c6a597cf4186e41d24963"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:38Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e58badee1b7c6a597cf4186e41d24963","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049698,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OH0.PuOWJ4r-IUFS6unPZxvRVLLB6hv-z9MRXco-pyeivUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e58badee1b7c6a597cf4186e41d24963","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"fb5af602-ab6f-42da-8185-822ed797053e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049698.2731204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e58badee1b7c6a597cf4186e41d24963","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77a3079a-da26-4964-88c2-005674becd1e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049698.2781394} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e58badee1b7c6a597cf4186e41d24963","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"0af8fb50-bc5d-4182-9a8c-467e4e100359","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049698.2910209} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e58badee1b7c6a597cf4186e41d24963","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e58badee1b7c6a597cf4186e41d24963"} gateway-1 | {"time_local":"23/Sep/2024:00:01:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3ff2868b-1160-4119-aed7-206f52d2c771 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e58badee1b7c6a597cf4186e41d24963"} device-1 | {"level":"info","message":"PATCH /devices/3ff2868b-1160-4119-aed7-206f52d2c771 200 30ms","method":"PATCH","requestID":"e58badee1b7c6a597cf4186e41d24963","responseTime":30,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OH0.PuOWJ4r-IUFS6unPZxvRVLLB6hv-z9MRXco-pyeivUk","level":"info","message":"auth send jwt","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:38Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231083,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049698,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OH0.PuOWJ4r-IUFS6unPZxvRVLLB6hv-z9MRXco-pyeivUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82"} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/websocket 200 21ms","method":"POST","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82","responseTime":21,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bcb533dfa2c6fe8232aaf2cbabb54c82"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0bc17bc512031821e6ba6479a212054a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0bc17bc512031821e6ba6479a212054a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/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":"0bc17bc512031821e6ba6479a212054a"} device-1 | {"level":"info","message":"OPTIONS /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/websocket 200 1ms","method":"OPTIONS","requestID":"0bc17bc512031821e6ba6479a212054a","responseTime":1,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo","level":"info","message":"auth send jwt","requestID":"863841968ea4e77d20fffeafa9c6f7df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"863841968ea4e77d20fffeafa9c6f7df","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"863841968ea4e77d20fffeafa9c6f7df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232185,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"863841968ea4e77d20fffeafa9c6f7df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"863841968ea4e77d20fffeafa9c6f7df","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"863841968ea4e77d20fffeafa9c6f7df"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/websocket 200 21ms","method":"POST","requestID":"863841968ea4e77d20fffeafa9c6f7df","responseTime":21,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"863841968ea4e77d20fffeafa9c6f7df"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1c158fded80041332cc9aa977efdb69","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c1c158fded80041332cc9aa977efdb69","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"c1c158fded80041332cc9aa977efdb69"} device-1 | {"level":"info","message":"OPTIONS /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 1ms","method":"OPTIONS","requestID":"c1c158fded80041332cc9aa977efdb69","responseTime":1,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo","level":"info","message":"auth send jwt","requestID":"6a875f873971ca1361d0c2eb78bfa983"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6a875f873971ca1361d0c2eb78bfa983","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6a875f873971ca1361d0c2eb78bfa983"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245798,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6a875f873971ca1361d0c2eb78bfa983","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a875f873971ca1361d0c2eb78bfa983","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"26bee838-affd-4e66-a07b-c4336616ff96","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049699.8937194} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a875f873971ca1361d0c2eb78bfa983","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"199820a2-ebea-4ad4-9247-d9e224899f64","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049699.9011426} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6a875f873971ca1361d0c2eb78bfa983","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"7a1d7f3c-9a19-433a-a92d-9bc5213dfdbe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049699.9153037} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6a875f873971ca1361d0c2eb78bfa983","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6a875f873971ca1361d0c2eb78bfa983"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","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":"6a875f873971ca1361d0c2eb78bfa983"} device-1 | {"level":"info","message":"PATCH /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 39ms","method":"PATCH","requestID":"6a875f873971ca1361d0c2eb78bfa983","responseTime":39,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo","level":"info","message":"auth send jwt","requestID":"c48828a98ff386d7c6f1323653aee7a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c48828a98ff386d7c6f1323653aee7a7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c48828a98ff386d7c6f1323653aee7a7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240157,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c48828a98ff386d7c6f1323653aee7a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c48828a98ff386d7c6f1323653aee7a7","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"5da48c1e-785d-42b6-83be-9fd8b3309c92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049699.9437213} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c48828a98ff386d7c6f1323653aee7a7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c48828a98ff386d7c6f1323653aee7a7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c48828a98ff386d7c6f1323653aee7a7"} device-1 | {"level":"info","message":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? 200 16ms","method":"GET","requestID":"c48828a98ff386d7c6f1323653aee7a7","responseTime":16,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo","level":"info","message":"auth send jwt","requestID":"5f490ab0bc5829089ca1c1adae15e44d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5f490ab0bc5829089ca1c1adae15e44d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f490ab0bc5829089ca1c1adae15e44d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5f490ab0bc5829089ca1c1adae15e44d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f490ab0bc5829089ca1c1adae15e44d","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"cc6196de-94b3-48d3-a017-78c821fc89cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049699.9675434} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5f490ab0bc5829089ca1c1adae15e44d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f490ab0bc5829089ca1c1adae15e44d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f490ab0bc5829089ca1c1adae15e44d"} device-1 | {"level":"info","message":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 15ms","method":"GET","requestID":"5f490ab0bc5829089ca1c1adae15e44d","responseTime":15,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo","level":"info","message":"auth send jwt","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b14afaa0729b6be365edee40acc0dd2c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.2852,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b14afaa0729b6be365edee40acc0dd2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b14afaa0729b6be365edee40acc0dd2c","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to run experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to book experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully booked experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"024b8920-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"024bd740-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830723,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"024b8920-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"024b8920-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.471002,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"024bd740-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"024bd740-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"43dffb35-ce2d-4379-bf59-c586e4ccf773","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.033121} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"024b8920-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"c539b37a-56cc-4369-b233-d6c403c8b149","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.0387292} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"024b8920-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? 200 22ms","method":"GET","requestID":"024b8920-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"024bd740-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"024bd740-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 27ms","method":"GET","requestID":"024bd740-793f-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Setting up experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully set up experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"02579710-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0257be20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02580c40-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully running experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.713099,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"02579710-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"02579710-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113047,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0257be20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0257be20-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.93285,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3462ec40-6a34-4a4a-afae-484e8de653e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.113372} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"aae2011b-f959-4f67-912c-97c6e4b47ada","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.1136968} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"0257be20-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"02580c40-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","rebac_allow":false,"scope_allow":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":"02580c40-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"39eae66c-692a-4808-ae22-68d10cda9f31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.1162314} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"02579710-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0257be20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 27ms","method":"GET","requestID":"0257be20-793f-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02580c40-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff419e2c5-81dd-498a-8ffe-54261d507218#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff419e2c5-81dd-498a-8ffe-54261d507218","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a615d2fd-515f-49b0-8b03-75642a3d468b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.126745} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling 200 27ms","method":"POST","requestID":"02580c40-793f-11ef-9733-5750b05365a5","responseTime":27,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8141e683-4030-4537-9d7c-1f95c0fa43ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.127184} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"02579710-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? 200 32ms","method":"GET","requestID":"02579710-793f-11ef-9733-5750b05365a5","responseTime":32,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"025ca020-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"b14afaa0729b6be365edee40acc0dd2c","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"025d1550-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae4d5b37-4772-48f0-996e-109125c57031","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.137048} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.417776,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"025ca020-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","rebac_allow":false,"scope_allow":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":"025ca020-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a37db6a-d4fb-4dca-a9fd-acd671e1d93a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.1402104} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"b14afaa0729b6be365edee40acc0dd2c","responseTime":161,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.492767,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"025ca020-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling 200 13ms","method":"POST","requestID":"025ca020-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"025d1550-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","rebac_allow":false,"scope_allow":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":"025d1550-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"025d1550-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMH0.IFhxNsU97VlYER_AfGBvs9PvtT3o5wdnArgNAXzR_9Y","level":"info","message":"auth send jwt","requestID":"9a07e76135d086f084454921e0588f24"} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling 200 14ms","method":"POST","requestID":"025d1550-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a07e76135d086f084454921e0588f24","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a07e76135d086f084454921e0588f24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"025fad60-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.903137,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9a07e76135d086f084454921e0588f24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049700,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMH0.IFhxNsU97VlYER_AfGBvs9PvtT3o5wdnArgNAXzR_9Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a07e76135d086f084454921e0588f24","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb0e5b8e-4ab1-400c-9b52-cf8b94050d7a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.1546278} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.638567,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"025fad60-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","rebac_allow":false,"scope_allow":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":"025fad60-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"025fad60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling 200 9ms","method":"POST","requestID":"025fad60-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"6d97d00e-2d31-4591-bf3b-7c6404711f0c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.159872} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a07e76135d086f084454921e0588f24","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"02618220-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0261a930-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a07e76135d086f084454921e0588f24"} gateway-1 | {"time_local":"23/Sep/2024:00:01:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a07e76135d086f084454921e0588f24"} device-1 | {"level":"info","message":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? 200 18ms","method":"GET","requestID":"9a07e76135d086f084454921e0588f24","responseTime":18,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977673,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"02618220-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"02618220-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0261a930-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0261a930-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMH0.IFhxNsU97VlYER_AfGBvs9PvtT3o5wdnArgNAXzR_9Y","level":"info","message":"auth send jwt","requestID":"d164a83de545093ef6ff68debe812927"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d164a83de545093ef6ff68debe812927","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d164a83de545093ef6ff68debe812927"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.735606749Z"}]},"request_id":"2b298727-2b18-40f7-8041-f57d7416265c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.173244} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"0fc07022-156c-421a-8013-1d5403b354b9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.174339} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"02618220-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0261a930-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68578,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d164a83de545093ef6ff68debe812927","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049700,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMH0.IFhxNsU97VlYER_AfGBvs9PvtT3o5wdnArgNAXzR_9Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d164a83de545093ef6ff68debe812927","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"02618220-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3ff2868b-1160-4119-aed7-206f52d2c771? 200 21ms","method":"GET","requestID":"02618220-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0261a930-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 21ms","method":"GET","requestID":"0261a930-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:37.785079812Z"}]},"request_id":"449f56c1-6805-4367-9547-7329602b97a2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.1848476} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Building connection plan","requestID":"b14afaa0729b6be365edee40acc0dd2c"} 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":"beea4a0a-f217-42e7-9d94-07e2a97dd35f"},{"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":"02c08448-95f8-4911-bff5-e4f2c0dcffd9"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f6b9b81a-9cdc-4cbe-bec1-772ab32410ba"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b14afaa0729b6be365edee40acc0dd2c"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b14afaa0729b6be365edee40acc0dd2c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d164a83de545093ef6ff68debe812927","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d164a83de545093ef6ff68debe812927"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} device-1 | {"level":"info","message":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? 200 19ms","method":"GET","requestID":"d164a83de545093ef6ff68debe812927","responseTime":19,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.915568,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d164a83de545093ef6ff68debe812927"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"026579c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049699,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTY5OX0.6emPbiquItVSovwaQPn8b7FEAQQabgCL5Ex5vt4oqEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"026579c0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"920331ea-2d9c-4c5b-8ee1-2023873690ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.2015984} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ee2af5e-c906-4f7a-801e-b704f23ed0db","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.2018564} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"026579c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600'","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600'","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"026579c0-793f-11ef-9733-5750b05365a5","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"026579c0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b14afaa0729b6be365edee40acc0dd2c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"026ec890-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75a27031-bcc4-416b-86fd-a65beb975a5d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.2540736} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.79051,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"026ec890-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"026ec890-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"026ec890-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling 200 10ms","method":"POST","requestID":"026ec890-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02709d50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:40Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 4086788716527915679 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:iYO0\r\na=ice-pwd:kCTU7DiqyHU/mFcF8zgCMRDr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9F:EA:24:21:4E:CE:C1:2A:3F:C4:D7:F8:22:4C:76:64:70:13:B3:FB:E6:FE:E4:99:4F:CF:EA:71:8C:FA:06:84\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5bc3238-7570-42a3-a293-358e6f01c09e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049700.266784} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.63326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"02709d50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","rebac_allow":false,"scope_allow":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":"02709d50-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02709d50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling 200 10ms","method":"POST","requestID":"02709d50-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling"} device-1 | {"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/24bf3b55-953b-4a6a-9009-7e372afdb600' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18be3b21be38710069619a024b5ac818","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"18be3b21be38710069619a024b5ac818","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"}}},"level":"info","message":"received a callback","requestID":"18be3b21be38710069619a024b5ac818"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"18be3b21be38710069619a024b5ac818","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"18be3b21be38710069619a024b5ac818"} device-1 | {"content":{"candidate":"candidate:2562404097 1 udp 2113937151 3d7c5455-a287-42d6-ab9e-718abc538980.local 48240 typ host generation 0 ufrag iYO0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:479610238 1 udp 1677729535 141.24.211.56 48240 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag iYO0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1335622389 1 udp 33562623 141.24.210.113 57395 typ relay raddr 141.24.211.56 rport 48240 generation 0 ufrag iYO0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","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/e7360fb3-cadf-4401-835e-2ac2a907a0d4'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4'"} device-1 | {"data":{"peerconnection":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/24bf3b55-953b-4a6a-9009-7e372afdb600' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"43529cc1dc8582e895b9ce7010fcbde4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"43529cc1dc8582e895b9ce7010fcbde4","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"}}},"level":"info","message":"received a callback","requestID":"43529cc1dc8582e895b9ce7010fcbde4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"03afd410-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24bf3b55-953b-4a6a-9009-7e372afdb600","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b303b3a-8a0a-4b9d-a856-4362dab8043e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.3596833} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.243095,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03afd410-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600","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":"03afd410-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"03afd410-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600 200 11ms","method":"GET","requestID":"03afd410-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"43529cc1dc8582e895b9ce7010fcbde4","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"43529cc1dc8582e895b9ce7010fcbde4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03b4dd20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbfeaaec-1c40-4165-8960-f765a97f14a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.3930142} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.525072,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03b4dd20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","rebac_allow":false,"scope_allow":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":"03b4dd20-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03b4dd20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling 200 12ms","method":"POST","requestID":"03b4dd20-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03b72710-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a15f259e-a1c2-4e24-b65a-eb400e55da70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.406383} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.550741,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03b72710-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03b72710-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03b72710-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling 200 9ms","method":"POST","requestID":"03b72710-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM","level":"info","message":"auth send jwt","requestID":"f2b0c4f335141604544ffc4af3cbd316"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f2b0c4f335141604544ffc4af3cbd316","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f419e2c5-81dd-498a-8ffe-54261d507218","requestID":"f2b0c4f335141604544ffc4af3cbd316"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.034445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f2b0c4f335141604544ffc4af3cbd316","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049702,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f2b0c4f335141604544ffc4af3cbd316","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f419e2c5-81dd-498a-8ffe-54261d507218","requestID":"f2b0c4f335141604544ffc4af3cbd316"} experiment-1 | {"level":"info","message":"GET /experiments/f419e2c5-81dd-498a-8ffe-54261d507218 200 15ms","method":"GET","requestID":"f2b0c4f335141604544ffc4af3cbd316","responseTime":15,"status":200,"url":"/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f419e2c5-81dd-498a-8ffe-54261d507218 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2b0c4f335141604544ffc4af3cbd316"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM","level":"info","message":"auth send jwt","requestID":"92125174859fcc12d5d7cb292592e510"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"92125174859fcc12d5d7cb292592e510","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f419e2c5-81dd-498a-8ffe-54261d507218","requestID":"92125174859fcc12d5d7cb292592e510"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.212761,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"92125174859fcc12d5d7cb292592e510","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049702,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92125174859fcc12d5d7cb292592e510","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Attempting to finish experiment","requestID":"92125174859fcc12d5d7cb292592e510"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"03c3f850-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.84451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03c3f850-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049702,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"03c3f850-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600","device":"e7360fb3-cadf-4401-835e-2ac2a907a0d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ff2868b-1160-4119-aed7-206f52d2c771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/24bf3b55-953b-4a6a-9009-7e372afdb600' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"24bf3b55-953b-4a6a-9009-7e372afdb600","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24bf3b55-953b-4a6a-9009-7e372afdb600': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F24bf3b55-953b-4a6a-9009-7e372afdb600","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"287f1f7e-c7cc-49ad-9c9c-f99e7053407c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.5104127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abd25fb3-121b-4b2a-8d74-8ba05afaaab2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.5108457} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd567c0fc8c23fde53cd3616facdb94a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"dd567c0fc8c23fde53cd3616facdb94a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"03c3f850-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"385f7a8e9d9a199b2162fc29ccd57a12","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"385f7a8e9d9a199b2162fc29ccd57a12","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"}}},"level":"info","message":"received a callback","requestID":"dd567c0fc8c23fde53cd3616facdb94a"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"}}},"level":"info","message":"received a callback","requestID":"385f7a8e9d9a199b2162fc29ccd57a12"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"03c3f850-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600 204 49ms","method":"DELETE","requestID":"03c3f850-793f-11ef-9733-5750b05365a5","responseTime":49,"status":204,"url":"/peerconnections/24bf3b55-953b-4a6a-9009-7e372afdb600"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"},"level":"info","message":"Successfully finished experiment","requestID":"92125174859fcc12d5d7cb292592e510"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03cecdc0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ff2868b-1160-4119-aed7-206f52d2c771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6451733a-b205-465a-84b7-03b2a0dc71a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.5617137} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.843344,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03cecdc0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771","object_type":"device","rebac_allow":false,"scope_allow":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":"03cecdc0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03cecdc0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling 200 10ms","method":"POST","requestID":"03cecdc0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/3ff2868b-1160-4119-aed7-206f52d2c771/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff419e2c5-81dd-498a-8ffe-54261d507218': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff419e2c5-81dd-498a-8ffe-54261d507218","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"658dd909-2cb2-4760-b583-76297c431524","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.5674732} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"336dbe78-96cb-4a22-b7c1-f742b7fc0405","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.5677488} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03d0a280-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"92125174859fcc12d5d7cb292592e510","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7360fb3-cadf-4401-835e-2ac2a907a0d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31c86ee9-903d-4fb1-8bb0-8b6903e1ada6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.573438} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.464631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03d0a280-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4","object_type":"device","rebac_allow":false,"scope_allow":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":"03d0a280-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03d0a280-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling 200 12ms","method":"POST","requestID":"03d0a280-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f419e2c5-81dd-498a-8ffe-54261d507218","requestID":"92125174859fcc12d5d7cb292592e510"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f419e2c5-81dd-498a-8ffe-54261d507218 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92125174859fcc12d5d7cb292592e510"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3625","request_time":"4.308","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0eec21712ab68b875d88bac21b4d6b23"} experiment-1 | {"level":"info","message":"DELETE /experiments/f419e2c5-81dd-498a-8ffe-54261d507218 204 158ms","method":"DELETE","requestID":"92125174859fcc12d5d7cb292592e510","responseTime":158,"status":204,"url":"/experiments/f419e2c5-81dd-498a-8ffe-54261d507218"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"dd567c0fc8c23fde53cd3616facdb94a","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"dd567c0fc8c23fde53cd3616facdb94a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"385f7a8e9d9a199b2162fc29ccd57a12","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"385f7a8e9d9a199b2162fc29ccd57a12"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3087","request_time":"2.807","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":"cb225b9d6bc727282104c1de6a4ca3f7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM","level":"info","message":"auth send jwt","requestID":"103d2d3b5a69774c51262046cb55ef25"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"103d2d3b5a69774c51262046cb55ef25"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3ff2868b-1160-4119-aed7-206f52d2c771' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.896795,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"103d2d3b5a69774c51262046cb55ef25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049702,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e7360fb3-cadf-4401-835e-2ac2a907a0d4' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0e3505d4-0bed-419a-8631-2030f618aac8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.6674745} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1176aa52-93a7-411e-9d3e-af234d5db682","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.6719031} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"4c9d4bb5-fbc8-4e44-ba20-5156f95e1888","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.6798725} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbb57be5-0b68-406f-bea2-7a63bff89f61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.6799986} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"8975fcfb-4eee-4651-946b-b031e32e4ac2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.6852033} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"103d2d3b5a69774c51262046cb55ef25"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"103d2d3b5a69774c51262046cb55ef25","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"103d2d3b5a69774c51262046cb55ef25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM","level":"info","message":"auth send jwt","requestID":"aea85691c83d14115b74d03fa65f1e2c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aea85691c83d14115b74d03fa65f1e2c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aea85691c83d14115b74d03fa65f1e2c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731101,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aea85691c83d14115b74d03fa65f1e2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049702,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwMn0.J5DuCN62xq7FvZAt76UM_bnKK2-KrlBqhBbKegeY6sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3a793e6f-a1c0-4502-aa7d-36667dcddbfc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.7121465} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31fe2b50-11e6-47c1-9d99-22709f91513d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.716556} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ace6be99-9adc-4328-91c5-8b43f45e3f7f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.7278352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba1a21d2-bea8-4988-b0b8-f9444764e7fa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.7280633} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"de03e6f1-0f02-46b0-9e9b-2c569ad867fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049702.7315743} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aea85691c83d14115b74d03fa65f1e2c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aea85691c83d14115b74d03fa65f1e2c"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"aea85691c83d14115b74d03fa65f1e2c","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"4615a43be712aa62846d439764e34ef5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4615a43be712aa62846d439764e34ef5","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"7b44588497a4bbe7717652405bb91385"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b44588497a4bbe7717652405bb91385","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4615a43be712aa62846d439764e34ef5"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7b44588497a4bbe7717652405bb91385"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.031954,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4615a43be712aa62846d439764e34ef5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4615a43be712aa62846d439764e34ef5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803857,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7b44588497a4bbe7717652405bb91385","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7b44588497a4bbe7717652405bb91385","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"89931cc8-f037-4fdf-b4f6-cfd92755a402","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2029755} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4615a43be712aa62846d439764e34ef5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"aa7f8ce5-8558-4cc4-82ad-a7f4afa17601","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2039454} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b44588497a4bbe7717652405bb91385","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f3c5424-cc9f-4d08-a94b-07999be2a43f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2072217} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4615a43be712aa62846d439764e34ef5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"218925df-75e4-4048-9489-6b3cdcf5a415","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2081385} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7b44588497a4bbe7717652405bb91385","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"e3d82d8f-3f10-4e31-9256-74e4b5258034","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2111137} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7b44588497a4bbe7717652405bb91385","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7b44588497a4bbe7717652405bb91385"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db5ed01a-7396-465b-be4d-b9100a64964d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7b44588497a4bbe7717652405bb91385"} device-1 | {"level":"info","message":"PATCH /devices/db5ed01a-7396-465b-be4d-b9100a64964d 200 19ms","method":"PATCH","requestID":"7b44588497a4bbe7717652405bb91385","responseTime":19,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"28e291f247aaa0d4081de1f0d592b091"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"28e291f247aaa0d4081de1f0d592b091","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"28e291f247aaa0d4081de1f0d592b091"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619943,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"28e291f247aaa0d4081de1f0d592b091","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"28e291f247aaa0d4081de1f0d592b091","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"e183d087-9ee5-4ed8-aacd-8fba917d729d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2211542} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4615a43be712aa62846d439764e34ef5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4615a43be712aa62846d439764e34ef5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c535b9f5-2701-48cc-b3dd-996baef6da00 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4615a43be712aa62846d439764e34ef5"} device-1 | {"level":"info","message":"PATCH /devices/c535b9f5-2701-48cc-b3dd-996baef6da00 200 31ms","method":"PATCH","requestID":"4615a43be712aa62846d439764e34ef5","responseTime":31,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"cf44007190e6ef9ac7f5912de64ddd49"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cf44007190e6ef9ac7f5912de64ddd49","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cf44007190e6ef9ac7f5912de64ddd49"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171493,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cf44007190e6ef9ac7f5912de64ddd49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cf44007190e6ef9ac7f5912de64ddd49","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"28e291f247aaa0d4081de1f0d592b091"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"28e291f247aaa0d4081de1f0d592b091"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/websocket 200 17ms","method":"POST","requestID":"28e291f247aaa0d4081de1f0d592b091","responseTime":17,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cf44007190e6ef9ac7f5912de64ddd49"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cf44007190e6ef9ac7f5912de64ddd49"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/websocket 200 17ms","method":"POST","requestID":"cf44007190e6ef9ac7f5912de64ddd49","responseTime":17,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"07448070d607f56e65dfb4597b5bdc2a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"07448070d607f56e65dfb4597b5bdc2a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07448070d607f56e65dfb4597b5bdc2a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667275,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07448070d607f56e65dfb4597b5bdc2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07448070d607f56e65dfb4597b5bdc2a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"c044a24c-6125-4b2f-8973-7183cfbfe9b2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.281606} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07448070d607f56e65dfb4597b5bdc2a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07448070d607f56e65dfb4597b5bdc2a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07448070d607f56e65dfb4597b5bdc2a"} device-1 | {"level":"info","message":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? 200 12ms","method":"GET","requestID":"07448070d607f56e65dfb4597b5bdc2a","responseTime":12,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"976709a4bf6870c0aa21165da09ea4ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"976709a4bf6870c0aa21165da09ea4ca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"976709a4bf6870c0aa21165da09ea4ca"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"976709a4bf6870c0aa21165da09ea4ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"976709a4bf6870c0aa21165da09ea4ca","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"6dc2a18f-a9a9-47f9-952a-8632251199dd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.2990687} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"976709a4bf6870c0aa21165da09ea4ca","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"976709a4bf6870c0aa21165da09ea4ca"} device-1 | {"level":"info","message":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? 200 14ms","method":"GET","requestID":"976709a4bf6870c0aa21165da09ea4ca","responseTime":14,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"976709a4bf6870c0aa21165da09ea4ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"55325237913ba454ea2784ae7ede85f5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"55325237913ba454ea2784ae7ede85f5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"55325237913ba454ea2784ae7ede85f5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.625195,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"55325237913ba454ea2784ae7ede85f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55325237913ba454ea2784ae7ede85f5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to run experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to book experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully booked experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04478030-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0447ce50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.424897,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04478030-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04478030-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112976,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0447ce50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0447ce50-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"07c0a03e-d41f-417b-9143-762665428213","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.3587353} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"04478030-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"c0acc89a-3e5c-4c73-bb3f-bb15257a7dd0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.3599522} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0447ce50-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04478030-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? 200 19ms","method":"GET","requestID":"04478030-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0447ce50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? 200 18ms","method":"GET","requestID":"0447ce50-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Setting up experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully set up experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0451b960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04520780-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"045255a0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully running experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.580341,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0451b960-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0451b960-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919931,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04520780-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"04520780-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.261109,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eebec5c8-2308-495b-add2-50572c2df5c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4268317} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"045255a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","rebac_allow":false,"scope_allow":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":"045255a0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"628bd2ed-294f-4681-ace6-fdcb43ea2656","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4297543} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"361251a0-ef7a-46e8-b0b2-8c10746fc945","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4318492} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"0451b960-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"04520780-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"045255a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling 200 23ms","method":"POST","requestID":"045255a0-793f-11ef-9733-5750b05365a5","responseTime":23,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0451b960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? 200 28ms","method":"GET","requestID":"0451b960-793f-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04520780-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? 200 28ms","method":"GET","requestID":"04520780-793f-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04567450-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0456c270-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ad8e40-77ee-4eb6-af4e-26045b247dd0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ad8e40-77ee-4eb6-af4e-26045b247dd0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"d23d1566-bd12-4dbf-9582-8678e44348ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4480028} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30a7c138-0fcd-4822-99fd-1bc299b47e5e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4482825} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"55325237913ba454ea2784ae7ede85f5","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddf8db25-32d0-4037-a631-165fbe6db167","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4511893} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.99925,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04567450-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","rebac_allow":false,"scope_allow":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":"04567450-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"52c6a39e-d16d-487b-87e6-585fb79c5795","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.453018} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.747367,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0456c270-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","rebac_allow":false,"scope_allow":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":"0456c270-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04567450-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling 200 14ms","method":"POST","requestID":"04567450-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0456c270-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"55325237913ba454ea2784ae7ede85f5"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling 200 14ms","method":"POST","requestID":"0456c270-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"55325237913ba454ea2784ae7ede85f5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"55325237913ba454ea2784ae7ede85f5","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04593370-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"d8a07844412573018568272fa6fb7711"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d8a07844412573018568272fa6fb7711","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d8a07844412573018568272fa6fb7711"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cef1a443-e54d-40b6-9eea-3769544bb57f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.469357} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.077949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04593370-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","rebac_allow":false,"scope_allow":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":"04593370-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998521,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d8a07844412573018568272fa6fb7711","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d8a07844412573018568272fa6fb7711","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04593370-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling 200 13ms","method":"POST","requestID":"04593370-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"a7f4f1dd-7594-4209-b0ff-af776051e48e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4768226} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d8a07844412573018568272fa6fb7711","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"045ba470-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"045bcb80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d8a07844412573018568272fa6fb7711"} device-1 | {"level":"info","message":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? 200 15ms","method":"GET","requestID":"d8a07844412573018568272fa6fb7711","responseTime":15,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8a07844412573018568272fa6fb7711"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.987806,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"045ba470-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"045ba470-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"045bcb80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"045bcb80-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg","level":"info","message":"auth send jwt","requestID":"80e705dbc3885e3e29d1ae90cd5fc268"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"80e705dbc3885e3e29d1ae90cd5fc268","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80e705dbc3885e3e29d1ae90cd5fc268"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.679751411Z"}]},"request_id":"7ff3ea28-7c1d-4d92-a2fa-547e9b726aa6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.488065} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"045ba470-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"e6d8e54f-a501-4367-be91-1a61f00ddfa8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4890542} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"045ba470-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"045bcb80-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} device-1 | {"level":"info","message":"GET /devices/db5ed01a-7396-465b-be4d-b9100a64964d? 200 12ms","method":"GET","requestID":"045ba470-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993793,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"80e705dbc3885e3e29d1ae90cd5fc268","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"80e705dbc3885e3e29d1ae90cd5fc268","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"045bcb80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? 200 15ms","method":"GET","requestID":"045bcb80-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:42.727804472Z"}]},"request_id":"5473f03a-d8f3-433c-9060-ce1004f6263a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.4952118} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Building connection plan","requestID":"55325237913ba454ea2784ae7ede85f5"} 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":"a5a9d749-dad0-4228-a9c3-53eb5481969c"},{"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":"198b2259-b783-4071-8010-fc2759c572a1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0ff9a1fa-7700-4d9a-aff7-e3f71dfa0bd7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"55325237913ba454ea2784ae7ede85f5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80e705dbc3885e3e29d1ae90cd5fc268","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"55325237913ba454ea2784ae7ede85f5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80e705dbc3885e3e29d1ae90cd5fc268"} gateway-1 | {"time_local":"23/Sep/2024:00:01:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80e705dbc3885e3e29d1ae90cd5fc268"} device-1 | {"level":"info","message":"GET /devices/c535b9f5-2701-48cc-b3dd-996baef6da00? 200 12ms","method":"GET","requestID":"80e705dbc3885e3e29d1ae90cd5fc268","responseTime":12,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.680827,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"045e6390-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049703,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwM30.3NLf22LTQFfhjGbdsSADnq2DH-zqwda5yjuHvZt0mGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"045e6390-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"2a07220d-e9a5-4cb5-877a-35b5ed1105bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.5118358} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d361957-39e4-4b22-af88-ab300f501cb3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.512103} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"045e6390-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615'","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615'","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"045e6390-793f-11ef-9733-5750b05365a5","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"045e6390-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"55325237913ba454ea2784ae7ede85f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0466a0f0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99291c8f-6301-4dda-90f3-ee0573b020e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.556164} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.530893,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0466a0f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0466a0f0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0466a0f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling 200 9ms","method":"POST","requestID":"0466a0f0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04684ea0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07426ff6-02df-4ea4-87e5-db499d3fd462","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049703.5660944} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.688442,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"04684ea0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"04684ea0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04684ea0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling 200 8ms","method":"POST","requestID":"04684ea0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling"} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/ae3128ad-7e63-4c6b-a443-cf32d2edf615' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eadb698a08f1f13b2301c2c7212eec09","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"eadb698a08f1f13b2301c2c7212eec09","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"}}},"level":"info","message":"received a callback","requestID":"eadb698a08f1f13b2301c2c7212eec09"} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.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 9ms","method":"POST","requestID":"eadb698a08f1f13b2301c2c7212eec09","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"eadb698a08f1f13b2301c2c7212eec09"} device-1 | {"data":{"peerconnection":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","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/ae3128ad-7e63-4c6b-a443-cf32d2edf615' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"42f819998fee3fc1d2069a7b6373c665","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"42f819998fee3fc1d2069a7b6373c665","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"}}},"level":"info","message":"received a callback","requestID":"42f819998fee3fc1d2069a7b6373c665"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"05a42a00-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fae3128ad-7e63-4c6b-a443-cf32d2edf615","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aba5c61a-d418-4004-a961-c3fcc6a627c9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.6397922} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.639418,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05a42a00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615","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":"05a42a00-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"05a42a00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615 200 14ms","method":"GET","requestID":"05a42a00-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"42f819998fee3fc1d2069a7b6373c665","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"42f819998fee3fc1d2069a7b6373c665"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05aa92a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3daed5a-76e6-447e-b057-d969bfea3119","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.680357} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.956447,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05aa92a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05aa92a0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05aa92a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling 200 9ms","method":"POST","requestID":"05aa92a0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05ac6760-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11e19768-7467-4328-b8dd-d6a28bce5d8c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.6915743} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.065308,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05ac6760-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05ac6760-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05ac6760-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling 200 11ms","method":"POST","requestID":"05ac6760-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU","level":"info","message":"auth send jwt","requestID":"d32dbfc94117323f4d66bcdd88b3cde9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d32dbfc94117323f4d66bcdd88b3cde9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","requestID":"d32dbfc94117323f4d66bcdd88b3cde9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.4858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d32dbfc94117323f4d66bcdd88b3cde9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049705,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d32dbfc94117323f4d66bcdd88b3cde9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","requestID":"d32dbfc94117323f4d66bcdd88b3cde9"} experiment-1 | {"level":"info","message":"GET /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0 200 15ms","method":"GET","requestID":"d32dbfc94117323f4d66bcdd88b3cde9","responseTime":15,"status":200,"url":"/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d32dbfc94117323f4d66bcdd88b3cde9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU","level":"info","message":"auth send jwt","requestID":"698fddf5897d4286f213ac69941a041c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"698fddf5897d4286f213ac69941a041c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","requestID":"698fddf5897d4286f213ac69941a041c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.289103,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"698fddf5897d4286f213ac69941a041c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049705,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"698fddf5897d4286f213ac69941a041c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Attempting to finish experiment","requestID":"698fddf5897d4286f213ac69941a041c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"05b7b200-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.261122,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05b7b200-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049705,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05b7b200-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db5ed01a-7396-465b-be4d-b9100a64964d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c535b9f5-2701-48cc-b3dd-996baef6da00","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/ae3128ad-7e63-4c6b-a443-cf32d2edf615' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ae3128ad-7e63-4c6b-a443-cf32d2edf615","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f45d80af4bb2768dbbea91e39fbdbb48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f45d80af4bb2768dbbea91e39fbdbb48","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fae3128ad-7e63-4c6b-a443-cf32d2edf615': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fae3128ad-7e63-4c6b-a443-cf32d2edf615","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"c2d64bed-2d00-4528-a74d-a8e80d174862","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.7824113} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9b6953b7759050a6ea8308d71640323","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b77c612-3f98-456a-88d7-abee0417b193","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.782778} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c9b6953b7759050a6ea8308d71640323","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"}}},"level":"info","message":"received a callback","requestID":"f45d80af4bb2768dbbea91e39fbdbb48"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"05b7b200-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"}}},"level":"info","message":"received a callback","requestID":"c9b6953b7759050a6ea8308d71640323"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"05b7b200-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615 204 42ms","method":"DELETE","requestID":"05b7b200-793f-11ef-9733-5750b05365a5","responseTime":42,"status":204,"url":"/peerconnections/ae3128ad-7e63-4c6b-a443-cf32d2edf615"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"},"level":"info","message":"Successfully finished experiment","requestID":"698fddf5897d4286f213ac69941a041c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05c1c420-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb5ed01a-7396-465b-be4d-b9100a64964d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff608a49-e3b0-478c-a696-5b3e059d99b2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.8321433} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.931018,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05c1c420-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d","object_type":"device","rebac_allow":false,"scope_allow":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":"05c1c420-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05c1c420-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling 200 10ms","method":"POST","requestID":"05c1c420-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/db5ed01a-7396-465b-be4d-b9100a64964d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05c3bff0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ad8e40-77ee-4eb6-af4e-26045b247dd0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F01ad8e40-77ee-4eb6-af4e-26045b247dd0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3b18f78c-d5f5-4e06-b92a-acfe777137c2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.8418944} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"106143e6-6d52-4e10-92ec-5b16892289f7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.8422549} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"698fddf5897d4286f213ac69941a041c","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc535b9f5-2701-48cc-b3dd-996baef6da00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5c2b9e0-010b-4bd9-b9bd-3052f589cc5b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.8454082} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.408333,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"05c3bff0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c535b9f5-2701-48cc-b3dd-996baef6da00","object_type":"device","rebac_allow":false,"scope_allow":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":"05c3bff0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05c3bff0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling 200 11ms","method":"POST","requestID":"05c3bff0-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c535b9f5-2701-48cc-b3dd-996baef6da00/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0","requestID":"698fddf5897d4286f213ac69941a041c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"698fddf5897d4286f213ac69941a041c"} experiment-1 | {"level":"info","message":"DELETE /experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0 204 171ms","method":"DELETE","requestID":"698fddf5897d4286f213ac69941a041c","responseTime":171,"status":204,"url":"/experiments/01ad8e40-77ee-4eb6-af4e-26045b247dd0"} gateway-1 | {"time_local":"23/Sep/2024:00:01:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.669","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"036082ebe15e1226f509b9f16103b148"} gateway-1 | {"time_local":"23/Sep/2024:00:01:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.680","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"de75c19deb5bf89d0a37c31c79d30a2a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"f45d80af4bb2768dbbea91e39fbdbb48","responseTime":135,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"c9b6953b7759050a6ea8308d71640323","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"c9b6953b7759050a6ea8308d71640323"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"f45d80af4bb2768dbbea91e39fbdbb48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU","level":"info","message":"auth send jwt","requestID":"34a3710990f777ecbad69d44acae3dac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34a3710990f777ecbad69d44acae3dac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"34a3710990f777ecbad69d44acae3dac"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db5ed01a-7396-465b-be4d-b9100a64964d' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.079801,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"34a3710990f777ecbad69d44acae3dac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049705,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","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/c535b9f5-2701-48cc-b3dd-996baef6da00' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a92ab068-daae-430b-9411-5292ea223930","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.9472399} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24912bca-8cb3-46cc-9f2e-bc64b49c4399","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.9542427} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"1917c2a7-a828-4d3c-a202-cc0516236b75","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.96729} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25760ad6-e413-4392-a93e-2af6ebe4e1d0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.9675333} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"97366cca-72a6-4c6f-9db6-32fd0fb9c93d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049705.9725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"34a3710990f777ecbad69d44acae3dac"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"34a3710990f777ecbad69d44acae3dac","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34a3710990f777ecbad69d44acae3dac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU","level":"info","message":"auth send jwt","requestID":"eefc8e1f82ce042638a0d0750408dafb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eefc8e1f82ce042638a0d0750408dafb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"eefc8e1f82ce042638a0d0750408dafb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.811335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eefc8e1f82ce042638a0d0750408dafb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049705,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNX0.5e2cmXRTabIcxwX6bKwpm01g1086RTzoui2Yphnr5QU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"06b04df8-05d8-46d9-967e-52269c70fc04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.0011082} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"075ddeb7-8e5f-41ad-909f-cc486a28a71c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.0074043} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"63387291-1c8b-482a-a4e6-9ac17e985cfa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.025564} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f633d29-cbe7-4b5b-8724-2b405a27124a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.0258396} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"b9a17047-46e3-432f-863d-5d438cb9a320","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.0305479} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"eefc8e1f82ce042638a0d0750408dafb"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"eefc8e1f82ce042638a0d0750408dafb","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eefc8e1f82ce042638a0d0750408dafb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"9378b8787d4d725710356d3a69a3522b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9378b8787d4d725710356d3a69a3522b","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"936a6607dae8f5003a9c55fef3ba3499"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9378b8787d4d725710356d3a69a3522b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"936a6607dae8f5003a9c55fef3ba3499","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"936a6607dae8f5003a9c55fef3ba3499"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232078,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9378b8787d4d725710356d3a69a3522b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9378b8787d4d725710356d3a69a3522b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.839625,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"936a6607dae8f5003a9c55fef3ba3499","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"936a6607dae8f5003a9c55fef3ba3499","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"c407bed8-f080-4d3d-9719-32d2f56dfb04","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.5114202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9378b8787d4d725710356d3a69a3522b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"131dc5e6-11d0-446e-8278-b909f5d24133","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.512243} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"936a6607dae8f5003a9c55fef3ba3499","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42b62762-4a62-460c-a22e-4764fdc92962","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.5172105} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9378b8787d4d725710356d3a69a3522b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14fbc042-6c2a-426c-aa13-3116ddc8dd26","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.5188375} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"936a6607dae8f5003a9c55fef3ba3499","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"e145abc0-fd2b-4ed0-9b5b-cf5b11375559","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.5226822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"936a6607dae8f5003a9c55fef3ba3499","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"936a6607dae8f5003a9c55fef3ba3499"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db36518b-4c49-4f56-9993-cdcbb0071951 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"936a6607dae8f5003a9c55fef3ba3499"} device-1 | {"level":"info","message":"PATCH /devices/db36518b-4c49-4f56-9993-cdcbb0071951 200 28ms","method":"PATCH","requestID":"936a6607dae8f5003a9c55fef3ba3499","responseTime":28,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"4e6fd44e-630a-49a6-8ac9-e9181f1e28fd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.5353405} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9378b8787d4d725710356d3a69a3522b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283149,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9378b8787d4d725710356d3a69a3522b"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f9c6e16a11a2f3ee754753126c0c0d3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/91805491-ed9a-4d0a-aa96-b65e591e5779 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.051","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9378b8787d4d725710356d3a69a3522b"} device-1 | {"level":"info","message":"PATCH /devices/91805491-ed9a-4d0a-aa96-b65e591e5779 200 43ms","method":"PATCH","requestID":"9378b8787d4d725710356d3a69a3522b","responseTime":43,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"8249957313e898938e7bf1db205afc76"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8249957313e898938e7bf1db205afc76","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8249957313e898938e7bf1db205afc76"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8249957313e898938e7bf1db205afc76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8249957313e898938e7bf1db205afc76","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/websocket 200 19ms","method":"POST","requestID":"f9c6e16a11a2f3ee754753126c0c0d3c","responseTime":19,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8249957313e898938e7bf1db205afc76"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8249957313e898938e7bf1db205afc76"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/websocket 200 17ms","method":"POST","requestID":"8249957313e898938e7bf1db205afc76","responseTime":17,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"2083842f64330707afa38b17beef20ec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2083842f64330707afa38b17beef20ec","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2083842f64330707afa38b17beef20ec"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2083842f64330707afa38b17beef20ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2083842f64330707afa38b17beef20ec","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"57e1f388-af2e-4cc0-8698-7df434fbc118","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.595231} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2083842f64330707afa38b17beef20ec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2083842f64330707afa38b17beef20ec"} device-1 | {"level":"info","message":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? 200 11ms","method":"GET","requestID":"2083842f64330707afa38b17beef20ec","responseTime":11,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2083842f64330707afa38b17beef20ec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"ecfdf9b45ddf188970c98287c4a3f796"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ecfdf9b45ddf188970c98287c4a3f796","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecfdf9b45ddf188970c98287c4a3f796"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.18063,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ecfdf9b45ddf188970c98287c4a3f796","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecfdf9b45ddf188970c98287c4a3f796","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"3d557656-f4cd-4013-a0e8-071b8b0bfac4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.6121676} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ecfdf9b45ddf188970c98287c4a3f796","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecfdf9b45ddf188970c98287c4a3f796"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ecfdf9b45ddf188970c98287c4a3f796"} device-1 | {"level":"info","message":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? 200 13ms","method":"GET","requestID":"ecfdf9b45ddf188970c98287c4a3f796","responseTime":13,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6083978a6bcf2cb8b8c20b445e9c897d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.157443,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6083978a6bcf2cb8b8c20b445e9c897d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6083978a6bcf2cb8b8c20b445e9c897d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to run experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to book experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully booked experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06417b70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0641c990-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961302,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"06417b70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06417b70-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687511,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0641c990-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0641c990-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"e0e80b4d-aac8-4802-b38a-e3978f3d3834","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.6707911} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"06417b70-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"5622aa70-3476-4fa1-b06a-6723de06bf4b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.6713853} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0641c990-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06417b70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? 200 11ms","method":"GET","requestID":"06417b70-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0641c990-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? 200 10ms","method":"GET","requestID":"0641c990-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Setting up experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully set up experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"064a5510-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"064a7c20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"064aa330-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully running experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937556,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064a5510-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"064a5510-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.815563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064a7c20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"064a7c20-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56394","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.761145,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25c03b32-77a8-431b-87f5-864784a87ef6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7288} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064aa330-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"064aa330-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"064aa330-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling 200 11ms","method":"POST","requestID":"064aa330-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"76a1e10e-837d-4e74-9b3c-ef6992cf7e92","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7335598} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"064a7c20-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"76470eb8-d42f-4ff4-bc1b-b71bb7b5bd73","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7342782} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"064a5510-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"064c9f00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"064a7c20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} device-1 | {"level":"info","message":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? 200 17ms","method":"GET","requestID":"064a7c20-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"064a5510-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? 200 18ms","method":"GET","requestID":"064a5510-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a109cca3-22d6-44bf-a3b1-56f11422a1bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.740609} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.797798,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064c9f00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","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 called","requestID":"064d8960-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"064c9f00-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"064c9f00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling 200 9ms","method":"POST","requestID":"064c9f00-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a1327d3-f80c-4ee9-aa53-92656fe1d917","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.745842} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1b52c0c-dc26-4199-8cee-2a1e03551faf#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1b52c0c-dc26-4199-8cee-2a1e03551faf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ae4eb6ed-05fc-4da3-8ae0-e1a5d1042d85","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7459822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a7018e7-4336-44ad-9dde-8cb62d8dabdd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7463017} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.503381,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064d8960-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","rebac_allow":false,"scope_allow":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":"064d8960-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6083978a6bcf2cb8b8c20b445e9c897d","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"064d8960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling 200 9ms","method":"POST","requestID":"064d8960-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"064f8530-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 133ms","method":"POST","requestID":"6083978a6bcf2cb8b8c20b445e9c897d","responseTime":133,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76213ef9-84c9-4752-b19d-7f21bf9ccb24","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7607706} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.29946,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"064f8530-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"af1ee7dab579a247e9b88560256439d4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"064f8530-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af1ee7dab579a247e9b88560256439d4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af1ee7dab579a247e9b88560256439d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"064f8530-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling 200 11ms","method":"POST","requestID":"064f8530-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716674,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"af1ee7dab579a247e9b88560256439d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af1ee7dab579a247e9b88560256439d4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06518100-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0651a810-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913318,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"06518100-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"06518100-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56392","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0651a810-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0651a810-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"ec994f08-8750-4c55-b8ca-0fee4dc12136","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7745187} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"af1ee7dab579a247e9b88560256439d4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af1ee7dab579a247e9b88560256439d4"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af1ee7dab579a247e9b88560256439d4"} device-1 | {"level":"info","message":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? 200 14ms","method":"GET","requestID":"af1ee7dab579a247e9b88560256439d4","responseTime":14,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:45.967240126Z"}]},"request_id":"f839f77f-f890-443c-9fde-4290b73956cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.778778} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"06518100-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"02acc79c-2000-428f-9dfe-8ded61d7d5d3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.780211} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0651a810-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ","level":"info","message":"auth send jwt","requestID":"61921d6ba520696dc0cf7b5ca83fd6de"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"61921d6ba520696dc0cf7b5ca83fd6de","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06518100-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/91805491-ed9a-4d0a-aa96-b65e591e5779? 200 16ms","method":"GET","requestID":"06518100-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"61921d6ba520696dc0cf7b5ca83fd6de"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0651a810-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? 200 16ms","method":"GET","requestID":"0651a810-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Building connection plan","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} 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":"af1ffb14-ae9f-47b9-8704-cb724a0d4c52"},{"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":"ee77099d-7b75-4aeb-a2b3-d3911a238c68"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"39f6b17c-4fe2-495b-b68b-7773c1dcd46f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729984,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"06546730-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"61921d6ba520696dc0cf7b5ca83fd6de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"61921d6ba520696dc0cf7b5ca83fd6de","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.578607,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"06546730-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049706,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwNn0.0VHlCq4Fgmlbr7R0dAjtGPsadfDSj9Q6XdZHFgetpTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06546730-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:46.025525813Z"}]},"request_id":"b7c0803f-c3eb-401b-b9b8-f9d15e2badd6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7912836} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"61921d6ba520696dc0cf7b5ca83fd6de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"61921d6ba520696dc0cf7b5ca83fd6de"} gateway-1 | {"time_local":"23/Sep/2024:00:01:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61921d6ba520696dc0cf7b5ca83fd6de"} device-1 | {"level":"info","message":"GET /devices/db36518b-4c49-4f56-9993-cdcbb0071951? 200 11ms","method":"GET","requestID":"61921d6ba520696dc0cf7b5ca83fd6de","responseTime":11,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"eaae74a7-75ab-44f5-8a40-b5242da42d6c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.7999196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4060a5a8-f814-4510-ac71-764613a62922","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.8002305} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"06546730-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"06546730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"06546730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1'","requestID":"06546730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1'","requestID":"06546730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"06546730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"06546730-793f-11ef-9733-5750b05365a5","responseTime":24,"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":"06546730-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6083978a6bcf2cb8b8c20b445e9c897d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"065c7d80-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee1456a4-aa39-4772-972c-42240dc07466","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.845071} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.293719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"065c7d80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"065c7d80-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"065c7d80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling 200 9ms","method":"POST","requestID":"065c7d80-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"065e0420-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68f459fb-ccab-4f7c-a0ca-1099c66d4735","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049706.8550906} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.765522,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"065e0420-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"065e0420-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"065e0420-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling 200 8ms","method":"POST","requestID":"065e0420-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling"} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"37a71d6bfd7421bce0fa459a5c3ae37a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"37a71d6bfd7421bce0fa459a5c3ae37a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"}}},"level":"info","message":"received a callback","requestID":"37a71d6bfd7421bce0fa459a5c3ae37a"} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"37a71d6bfd7421bce0fa459a5c3ae37a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"37a71d6bfd7421bce0fa459a5c3ae37a"} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","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/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d9e3c16c6bb3f2270f657f4b7bbe723","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0d9e3c16c6bb3f2270f657f4b7bbe723","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"}}},"level":"info","message":"received a callback","requestID":"0d9e3c16c6bb3f2270f657f4b7bbe723"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"079b1800-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37b9b0c6-f66e-4e3b-a471-c25be070b2a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049708.934722} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.036662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"079b1800-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","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":"079b1800-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"079b1800-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1 200 13ms","method":"GET","requestID":"079b1800-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"0d9e3c16c6bb3f2270f657f4b7bbe723","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d9e3c16c6bb3f2270f657f4b7bbe723"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07a180a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fad5bbf7-711b-4b50-8f7e-ad49c5a8e38a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049708.9768033} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.856575,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07a180a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","rebac_allow":false,"scope_allow":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":"07a180a0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07a180a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling 200 13ms","method":"POST","requestID":"07a180a0-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07a3f1a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79bef946-9903-47cf-b2bc-95e927db149d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049708.9934123} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.905457,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07a3f1a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","rebac_allow":false,"scope_allow":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":"07a3f1a0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07a3f1a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling 200 14ms","method":"POST","requestID":"07a3f1a0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE","level":"info","message":"auth send jwt","requestID":"1689fdc8c146d59ac6d05ebafdc6a294"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1689fdc8c146d59ac6d05ebafdc6a294","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","requestID":"1689fdc8c146d59ac6d05ebafdc6a294"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.785772,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1689fdc8c146d59ac6d05ebafdc6a294","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049709,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1689fdc8c146d59ac6d05ebafdc6a294","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","requestID":"1689fdc8c146d59ac6d05ebafdc6a294"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1689fdc8c146d59ac6d05ebafdc6a294"} experiment-1 | {"level":"info","message":"GET /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf 200 17ms","method":"GET","requestID":"1689fdc8c146d59ac6d05ebafdc6a294","responseTime":17,"status":200,"url":"/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE","level":"info","message":"auth send jwt","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.154632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049709,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Attempting to finish experiment","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"07aea000-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.148441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07aea000-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049709,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07aea000-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"91805491-ed9a-4d0a-aa96-b65e591e5779","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"db36518b-4c49-4f56-9993-cdcbb0071951","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","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/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe9cfb9750ead0dd72bb905f8d5abf51","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ebbe8c7d-971d-4611-ae8e-207e69c2660f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.0853763} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fe9cfb9750ead0dd72bb905f8d5abf51","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7fd5cfb-094b-4768-89a9-5b6e1bf8c190","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.0857341} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b50a108b166a5b15a9d3258d4bcf58f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"}}},"level":"info","message":"received a callback","requestID":"fe9cfb9750ead0dd72bb905f8d5abf51"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0b50a108b166a5b15a9d3258d4bcf58f","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"07aea000-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"}}},"level":"info","message":"received a callback","requestID":"0b50a108b166a5b15a9d3258d4bcf58f"} device-1 | {"data":{"peerconnection":"9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"07aea000-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1 204 54ms","method":"DELETE","requestID":"07aea000-793f-11ef-9733-5750b05365a5","responseTime":54,"status":204,"url":"/peerconnections/9931f5bc-5cc2-48ee-9fb1-7b2e553c01c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"},"level":"info","message":"Successfully finished experiment","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07ba5fd0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91805491-ed9a-4d0a-aa96-b65e591e5779","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8dd3381f-dafc-4e3e-a0b6-baa266743468","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.1405528} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922752,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07ba5fd0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779","object_type":"device","rebac_allow":false,"scope_allow":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":"07ba5fd0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07ba5fd0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling 200 14ms","method":"POST","requestID":"07ba5fd0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/91805491-ed9a-4d0a-aa96-b65e591e5779/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1b52c0c-dc26-4199-8cee-2a1e03551faf': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1b52c0c-dc26-4199-8cee-2a1e03551faf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"9faacf05-d8b7-45bb-9cd2-ae78ff3096c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.1487122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd5bf0fe-af8f-416a-99ab-0bfd773cf1ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.1490543} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07bcf7e0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb36518b-4c49-4f56-9993-cdcbb0071951","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"061da1ed-0025-4437-aa4c-428087c1e9fb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.1581304} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.375407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"07bcf7e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951","object_type":"device","rebac_allow":false,"scope_allow":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":"07bcf7e0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07bcf7e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling 200 15ms","method":"POST","requestID":"07bcf7e0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/db36518b-4c49-4f56-9993-cdcbb0071951/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.676","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"656de97cd4ad04b21458c43050d4f489"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.667","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5e20f79323e0cb415238d310aab31574"} experiment-1 | {"level":"info","message":"DELETE /experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf 204 190ms","method":"DELETE","requestID":"8bf4ee98874e84b0ca9cec4a0d8a852f","responseTime":190,"status":204,"url":"/experiments/b1b52c0c-dc26-4199-8cee-2a1e03551faf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"fe9cfb9750ead0dd72bb905f8d5abf51","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"fe9cfb9750ead0dd72bb905f8d5abf51"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"0b50a108b166a5b15a9d3258d4bcf58f","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"0b50a108b166a5b15a9d3258d4bcf58f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE","level":"info","message":"auth send jwt","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db36518b-4c49-4f56-9993-cdcbb0071951' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.388475,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049709,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/91805491-ed9a-4d0a-aa96-b65e591e5779' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bd9622c1-d889-4c98-8f79-4f291424edb0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.2619305} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a99a80fa-ad25-4c12-a67f-59c17b0a9a32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.2690616} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"bf7998bd-0938-4336-8c53-f80d79827fb9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.2814982} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ced082f9-4786-4ac9-b955-37a82ba4a8d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.281746} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"1d03edaa-c395-48ec-acc4-9a002ccdeaf5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.2879767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"2150a31569e5c1aa4eca5f267aaa3dbb","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE","level":"info","message":"auth send jwt","requestID":"d305fc2127461f0a07ff0402aa3282bf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d305fc2127461f0a07ff0402aa3282bf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d305fc2127461f0a07ff0402aa3282bf"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.75911,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d305fc2127461f0a07ff0402aa3282bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049709,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcwOX0.uDH6I5aO0BfUKz2fXzgcXdU4F1jGtbjgO042QodwZYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"20371d9e-aa6f-4c52-9b55-cfd589879343","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.3142579} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb9b67ec-918f-4440-a4c1-3172f91e348a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.3193653} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"eb05ee36-69d2-47f1-abbe-9d5de6bed776","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.336778} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"404e9cab-2b56-4f29-8ad9-cf2b6de91396","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.3370688} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"870e4676-d23c-4bb8-9c42-248c14417fb9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049709.341851} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d305fc2127461f0a07ff0402aa3282bf"} gateway-1 | {"time_local":"23/Sep/2024:00:01:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d305fc2127461f0a07ff0402aa3282bf"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"d305fc2127461f0a07ff0402aa3282bf","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6437df5a60fa8e9463f7575ac345d27","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a6437df5a60fa8e9463f7575ac345d27","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/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":"a6437df5a60fa8e9463f7575ac345d27"} device-1 | {"level":"info","message":"OPTIONS /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/websocket 200 1ms","method":"OPTIONS","requestID":"a6437df5a60fa8e9463f7575ac345d27","responseTime":1,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"31f91b3b400ef5d686cd5ac0d3bcd578","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"31f91b3b400ef5d686cd5ac0d3bcd578","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/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":"31f91b3b400ef5d686cd5ac0d3bcd578"} device-1 | {"level":"info","message":"OPTIONS /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/websocket 200 1ms","method":"OPTIONS","requestID":"31f91b3b400ef5d686cd5ac0d3bcd578","responseTime":1,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/websocket"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249142,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"21995a549cd2477b9062204625d7b5b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21995a549cd2477b9062204625d7b5b1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"21995a549cd2477b9062204625d7b5b1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668109,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"21995a549cd2477b9062204625d7b5b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21995a549cd2477b9062204625d7b5b1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/websocket 200 28ms","method":"POST","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7","responseTime":28,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a5b8e5d5115b4f64e7f2f29ea7a7a9b7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"21995a549cd2477b9062204625d7b5b1"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/websocket 200 28ms","method":"POST","requestID":"21995a549cd2477b9062204625d7b5b1","responseTime":28,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.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":"21995a549cd2477b9062204625d7b5b1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc3c26c7124d291069d83a95c9e66da1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"dc3c26c7124d291069d83a95c9e66da1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"dc3c26c7124d291069d83a95c9e66da1"} device-1 | {"level":"info","message":"OPTIONS /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 1ms","method":"OPTIONS","requestID":"dc3c26c7124d291069d83a95c9e66da1","responseTime":1,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"239283726d43c244bdbb770c822f2bb0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"239283726d43c244bdbb770c822f2bb0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"239283726d43c244bdbb770c822f2bb0"} device-1 | {"level":"info","message":"OPTIONS /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 1ms","method":"OPTIONS","requestID":"239283726d43c244bdbb770c822f2bb0","responseTime":1,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"a9f2a1b7d27894f16aeeb99033c6b345"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a9f2a1b7d27894f16aeeb99033c6b345"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960653,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a9f2a1b7d27894f16aeeb99033c6b345","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"de8a3ac4da28bac43bebe2aff4413535"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"de8a3ac4da28bac43bebe2aff4413535","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"de8a3ac4da28bac43bebe2aff4413535"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"de8a3ac4da28bac43bebe2aff4413535","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"de8a3ac4da28bac43bebe2aff4413535","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"fac62831-ba55-4b81-970c-57f89646f116","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.4958215} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea380f95-6cbd-4946-9aaa-9df91141e5fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.5034728} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"64e54429-a9e0-4964-b313-4bcef9f389ff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.5070865} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de8a3ac4da28bac43bebe2aff4413535","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d27fbc24-51d0-4a0e-af63-75341cf5656c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.5135612} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"de8a3ac4da28bac43bebe2aff4413535","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"27d896b1-2362-449e-92c6-960a17fa1f4c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.5217886} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a9f2a1b7d27894f16aeeb99033c6b345"} device-1 | {"level":"info","message":"PATCH /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 41ms","method":"PATCH","requestID":"a9f2a1b7d27894f16aeeb99033c6b345","responseTime":41,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","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":"a9f2a1b7d27894f16aeeb99033c6b345"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"0eb4b243-ec0f-493a-acca-916779f045ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.534116} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de8a3ac4da28bac43bebe2aff4413535","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"de8a3ac4da28bac43bebe2aff4413535"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.054","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":"de8a3ac4da28bac43bebe2aff4413535"} device-1 | {"level":"info","message":"PATCH /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 46ms","method":"PATCH","requestID":"de8a3ac4da28bac43bebe2aff4413535","responseTime":46,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"deeadaad222f12ab0d90f32d838675ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"deeadaad222f12ab0d90f32d838675ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"deeadaad222f12ab0d90f32d838675ef"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"deeadaad222f12ab0d90f32d838675ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"deeadaad222f12ab0d90f32d838675ef","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"42752e2e-e6ea-40b5-b36b-42199b720de6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.561739} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"deeadaad222f12ab0d90f32d838675ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"deeadaad222f12ab0d90f32d838675ef"} device-1 | {"level":"info","message":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 17ms","method":"GET","requestID":"deeadaad222f12ab0d90f32d838675ef","responseTime":17,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"deeadaad222f12ab0d90f32d838675ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"fc924baa877c56ad11f93befd9baa5d5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fc924baa877c56ad11f93befd9baa5d5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc924baa877c56ad11f93befd9baa5d5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714428,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc924baa877c56ad11f93befd9baa5d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc924baa877c56ad11f93befd9baa5d5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"b3535029-1ab6-4f2f-9e19-76bc0c01209b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.58431} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc924baa877c56ad11f93befd9baa5d5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc924baa877c56ad11f93befd9baa5d5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc924baa877c56ad11f93befd9baa5d5"} device-1 | {"level":"info","message":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 15ms","method":"GET","requestID":"fc924baa877c56ad11f93befd9baa5d5","responseTime":15,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.005286,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0d6edc2fcbde4e4148e75a78b20d1dda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to run experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to book experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully booked experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09395eb0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0939acd0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.310008,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09395eb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"09395eb0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.492694,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0939acd0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0939acd0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"a8af3cad-fdd1-40bd-a8ae-74c52627303d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.6531303} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"09395eb0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09395eb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"cf7d6420-45a9-4e28-8e70-bb29d8136348","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.6583762} device-1 | {"level":"info","message":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 15ms","method":"GET","requestID":"09395eb0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0939acd0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0939acd0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 18ms","method":"GET","requestID":"0939acd0-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Setting up experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully set up experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09440d10-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09448240-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0944a950-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully running experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.787138,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09440d10-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"09440d10-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60911,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09448240-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"09448240-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"661ef381-728c-4679-8cba-36b5bfb4e2f8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.723275} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.576833,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0944a950-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","rebac_allow":false,"scope_allow":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":"0944a950-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"d9d5790a-47de-4b5a-a8e2-5e33e49f8f4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7255545} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09448240-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"fff15d18-7943-46b6-91cf-a357f79e4a75","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7274857} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"09440d10-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0944a950-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling 200 12ms","method":"POST","requestID":"0944a950-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0946cc30-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09448240-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 17ms","method":"GET","requestID":"09448240-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09440d10-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} device-1 | {"level":"info","message":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 21ms","method":"GET","requestID":"09440d10-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a614619-28ce-49fa-8ded-2c02725a6c13","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7360053} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"09478f80-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.225059,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0946cc30-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","rebac_allow":false,"scope_allow":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":"0946cc30-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0946cc30-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling 200 10ms","method":"POST","requestID":"0946cc30-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe924e12d-a20d-4934-a194-f17823ad7c35#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe924e12d-a20d-4934-a194-f17823ad7c35","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"af768ef6-813b-4ff9-81aa-8766a1b017e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7423565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15d95fa3-968e-49ae-810b-15f227eabae8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7429233} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aeddad79-6b6f-4519-884a-c6c1f436d645","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7435493} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.288763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09478f80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","rebac_allow":false,"scope_allow":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":"09478f80-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"09478f80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling 200 12ms","method":"POST","requestID":"09478f80-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0949d970-793f-11ef-9733-5750b05365a5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda","responseTime":155,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"6bd5ff26b396e817474ace422a5a448b"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e771b08-4658-43d8-bee9-6dfe103cf947","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7559335} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6bd5ff26b396e817474ace422a5a448b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.559407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bd5ff26b396e817474ace422a5a448b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0949d970-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0949d970-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0949d970-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling 200 8ms","method":"POST","requestID":"0949d970-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6bd5ff26b396e817474ace422a5a448b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6bd5ff26b396e817474ace422a5a448b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"094b8720-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"094bae30-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"ab494c90-c2a8-430d-ae71-98808afa03f0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7640955} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6bd5ff26b396e817474ace422a5a448b","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831697,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686291,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"094b8720-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"094b8720-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"094bae30-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"094bae30-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bd5ff26b396e817474ace422a5a448b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bd5ff26b396e817474ace422a5a448b"} device-1 | {"level":"info","message":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 15ms","method":"GET","requestID":"6bd5ff26b396e817474ace422a5a448b","responseTime":15,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.281458717Z"}]},"request_id":"f56bd03b-f98f-4140-a60f-d6870dc4a742","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7713718} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"094b8720-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"a60a6620-518b-4f66-802e-3e50a497e4e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7724469} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"094bae30-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"eda84552dd78ea0cedb543fd0e1859e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eda84552dd78ea0cedb543fd0e1859e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"094b8720-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9799d600-83d4-4ab8-9c40-69f5803bc609? 200 14ms","method":"GET","requestID":"094b8720-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"094bae30-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 13ms","method":"GET","requestID":"094bae30-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eda84552dd78ea0cedb543fd0e1859e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Building connection plan","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} 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":"18df9755-f1ea-49c9-ad14-1a9e400d9bbf"},{"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":"74e64ccb-01d3-42c4-98d7-53f810fb03ed"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e21d5f19-cf74-4f41-836c-6af30f0ad53d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"094e1f30-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"094e1f30-793f-11ef-a51e-0dff660adfff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.74533,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} forwarding-1 | {"level":"info","message":"POST /rooms 201 0ms","method":"POST","requestID":"094e1f30-793f-11ef-a51e-0dff660adfff","responseTime":0,"status":201,"url":"/rooms"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"eda84552dd78ea0cedb543fd0e1859e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eda84552dd78ea0cedb543fd0e1859e0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e?id=5723fdaf-5b01-4224-80ca-3a84a31ae08b","ws://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e?id=3097e75b-5177-4b6a-b5ac-43e03a4a80d3"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:49.336730978Z"}]},"request_id":"b1756bba-30e6-449d-ae60-511b72de5994","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.784485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eda84552dd78ea0cedb543fd0e1859e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.663349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"094ebb70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"094ebb70-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eda84552dd78ea0cedb543fd0e1859e0"} device-1 | {"level":"info","message":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? 200 12ms","method":"GET","requestID":"eda84552dd78ea0cedb543fd0e1859e0","responseTime":12,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eda84552dd78ea0cedb543fd0e1859e0"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"b1becbf9-222e-41f1-8a25-0d3c81607829","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7947712} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b36b32e-2294-41b3-ba23-cf7c68181174","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.7950656} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"094ebb70-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6'","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6'","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"094ebb70-793f-11ef-9733-5750b05365a5","responseTime":26,"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":"094ebb70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0954fd00-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5723fdaf-5b01-4224-80ca-3a84a31ae08b\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\"","requestID":"0954fd00-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0954fd00-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"09552410-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\"","requestID":"09552410-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"09552410-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d8c67ab8534e0b8a690bc12d0e151833","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d8c67ab8534e0b8a690bc12d0e151833","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"}}},"level":"info","message":"received a callback","requestID":"d8c67ab8534e0b8a690bc12d0e151833"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"d8c67ab8534e0b8a690bc12d0e151833","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"d8c67ab8534e0b8a690bc12d0e151833"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0d6edc2fcbde4e4148e75a78b20d1dda"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0958f4a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62197107-963e-44b1-91cf-1a34e5739d2a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.8548243} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.558433,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0958f4a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0958f4a0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed4dadca76ac6737c1fddba09dc4584a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"postDevicesByDeviceIdSignaling succeeded","requestID":"0958f4a0-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ed4dadca76ac6737c1fddba09dc4584a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling 200 10ms","method":"POST","requestID":"0958f4a0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"095ac960-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"}}},"level":"info","message":"received a callback","requestID":"ed4dadca76ac6737c1fddba09dc4584a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"259bef6a-9713-4d3e-aca0-44c39476d697","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.8663476} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.431696,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"095b65a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"095ac960-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"095ac960-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"095ac960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling 200 8ms","method":"POST","requestID":"095ac960-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8249d89f-8e69-4e28-91a5-103beac752c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bb4d9a6-61d8-4654-879f-e365825ad634","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.871284} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.455836,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"095b65a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"095b65a0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"095b65a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6 200 8ms","method":"GET","requestID":"095b65a0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"ed4dadca76ac6737c1fddba09dc4584a","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"ed4dadca76ac6737c1fddba09dc4584a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"095f0f20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24a75c62-16f6-4635-88fb-e1a6cdae40d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.8948698} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.425603,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"095f0f20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"095f0f20-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"095f0f20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling 200 9ms","method":"POST","requestID":"095f0f20-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"096095c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"071532b9-f455-46bd-a06c-391ef689ce36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049711.9052732} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.024396,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"096095c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","rebac_allow":false,"scope_allow":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":"096095c0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"096095c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling 200 9ms","method":"POST","requestID":"096095c0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"c464761efc64cab048cc27bd022702d4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c464761efc64cab048cc27bd022702d4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e924e12d-a20d-4934-a194-f17823ad7c35","requestID":"c464761efc64cab048cc27bd022702d4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.403245,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c464761efc64cab048cc27bd022702d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c464761efc64cab048cc27bd022702d4","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e924e12d-a20d-4934-a194-f17823ad7c35","requestID":"c464761efc64cab048cc27bd022702d4"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e924e12d-a20d-4934-a194-f17823ad7c35 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c464761efc64cab048cc27bd022702d4"} experiment-1 | {"level":"info","message":"GET /experiments/e924e12d-a20d-4934-a194-f17823ad7c35 200 16ms","method":"GET","requestID":"c464761efc64cab048cc27bd022702d4","responseTime":16,"status":200,"url":"/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ","level":"info","message":"auth send jwt","requestID":"b76b08868fe62029542e68ad4cf27617"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b76b08868fe62029542e68ad4cf27617","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e924e12d-a20d-4934-a194-f17823ad7c35","requestID":"b76b08868fe62029542e68ad4cf27617"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.194577,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b76b08868fe62029542e68ad4cf27617","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b76b08868fe62029542e68ad4cf27617","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Attempting to finish experiment","requestID":"b76b08868fe62029542e68ad4cf27617"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"096c0770-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.310917,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"096c0770-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049711,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMX0.A9_jrfp1Uh8c6GaqeFCrW4dXicdEjOLz3qqkBUsh5qQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"096c0770-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","device":"4675fe5c-75bb-4ed9-98e6-278aa92948f5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6","device":"9799d600-83d4-4ab8-9c40-69f5803bc609","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/57b72655-1510-4d42-b690-ec7af76df30e?id=3097e75b-5177-4b6a-b5ac-43e03a4a80d3 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.169","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":"f764fb1fe66f09639a3cc8943d1fb570"} gateway-1 | {"time_local":"23/Sep/2024:00:01:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/57b72655-1510-4d42-b690-ec7af76df30e?id=5723fdaf-5b01-4224-80ca-3a84a31ae08b HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.172","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":"65effc043b86798b84fd7bea1f7602b6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3097e75b-5177-4b6a-b5ac-43e03a4a80d3\" from room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5723fdaf-5b01-4224-80ca-3a84a31ae08b\" in room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5723fdaf-5b01-4224-80ca-3a84a31ae08b\" from room \"http://localhost/rooms/57b72655-1510-4d42-b690-ec7af76df30e\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d982ca5776f791eb25733bbdc275a767","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d982ca5776f791eb25733bbdc275a767","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8249d89f-8e69-4e28-91a5-103beac752c6': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8249d89f-8e69-4e28-91a5-103beac752c6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"8378cacd-41e0-440e-b540-83effd8267c4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.0024834} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0eb64b9810015ebcdf5a632afa0f366d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b622c232-36ca-4a1b-9490-6b499b54235b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.0032134} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"}}},"level":"info","message":"received a callback","requestID":"d982ca5776f791eb25733bbdc275a767"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0eb64b9810015ebcdf5a632afa0f366d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"}}},"level":"info","message":"received a callback","requestID":"0eb64b9810015ebcdf5a632afa0f366d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"096c0770-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"8249d89f-8e69-4e28-91a5-103beac752c6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"096c0770-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6 204 50ms","method":"DELETE","requestID":"096c0770-793f-11ef-9733-5750b05365a5","responseTime":50,"status":204,"url":"/peerconnections/8249d89f-8e69-4e28-91a5-103beac752c6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"},"level":"info","message":"Successfully finished experiment","requestID":"b76b08868fe62029542e68ad4cf27617"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0976dce0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9799d600-83d4-4ab8-9c40-69f5803bc609","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96c2dd7e-3120-490c-971e-269f2b06dfa9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.0533452} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.962061,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0976dce0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609","object_type":"device","rebac_allow":false,"scope_allow":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":"0976dce0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0976dce0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling 200 14ms","method":"POST","requestID":"0976dce0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/9799d600-83d4-4ab8-9c40-69f5803bc609/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe924e12d-a20d-4934-a194-f17823ad7c35': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe924e12d-a20d-4934-a194-f17823ad7c35","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"c4e413f9-7f64-4604-983c-bf2202a71031","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.0615814} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7621142d-5dd4-4528-b300-d4654f8dc30b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.0622802} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"09799c00-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b76b08868fe62029542e68ad4cf27617","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4675fe5c-75bb-4ed9-98e6-278aa92948f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9816a2c8-020b-4deb-8424-cf5a1d65caaf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.071081} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.835898,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"09799c00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5","object_type":"device","rebac_allow":false,"scope_allow":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":"09799c00-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"09799c00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling 200 13ms","method":"POST","requestID":"09799c00-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e924e12d-a20d-4934-a194-f17823ad7c35","requestID":"b76b08868fe62029542e68ad4cf27617"} gateway-1 | {"time_local":"23/Sep/2024:00:01:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e924e12d-a20d-4934-a194-f17823ad7c35 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b76b08868fe62029542e68ad4cf27617"} experiment-1 | {"level":"info","message":"DELETE /experiments/e924e12d-a20d-4934-a194-f17823ad7c35 204 178ms","method":"DELETE","requestID":"b76b08868fe62029542e68ad4cf27617","responseTime":178,"status":204,"url":"/experiments/e924e12d-a20d-4934-a194-f17823ad7c35"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"d982ca5776f791eb25733bbdc275a767","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"d982ca5776f791eb25733bbdc275a767"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMn0.X6fyCzN0AFFgKNUblHyjBeqXzlqyvON8sdF6tXG36nY","level":"info","message":"auth send jwt","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"0eb64b9810015ebcdf5a632afa0f366d","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"0eb64b9810015ebcdf5a632afa0f366d"} device-1 | {"level":"info","message":"postDevices called","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.842675,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049712,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMn0.X6fyCzN0AFFgKNUblHyjBeqXzlqyvON8sdF6tXG36nY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.705","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":"19d5c365bb21265e69d405546f3e999d"} gateway-1 | {"time_local":"23/Sep/2024:00:01:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.715","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":"21d675b4ae18e8f21a22f68896fc5d12"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9799d600-83d4-4ab8-9c40-69f5803bc609' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4675fe5c-75bb-4ed9-98e6-278aa92948f5' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8a4c576b-5a10-474f-96c7-1440ab1efdd1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.1674151} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba8b22e6-d512-405d-977c-6691b18be49b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.1715302} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a42f19e9-cee0-42ae-912e-0c39069fe0bb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.1833444} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdad0dd8-5ad6-46ab-92d1-e788c2b738ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.1833744} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"91c56f6a-219f-44ec-ba09-223aed6c3691","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.1868086} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":2,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"23/Sep/2024:00:01:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"5a7e4b3b7533ab1c86bbf10c3e5a9d4b","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMn0.X6fyCzN0AFFgKNUblHyjBeqXzlqyvON8sdF6tXG36nY","level":"info","message":"auth send jwt","requestID":"6c10d730b2ae078fc34d5c7584373d29"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6c10d730b2ae078fc34d5c7584373d29","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6c10d730b2ae078fc34d5c7584373d29"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872145,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6c10d730b2ae078fc34d5c7584373d29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049712,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxMn0.X6fyCzN0AFFgKNUblHyjBeqXzlqyvON8sdF6tXG36nY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d0380b3b-15c5-4a38-8866-9763b54c19f5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.2100425} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45699d39-e548-41c5-91e2-73c35a4e513e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.2143002} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"f40bbebc-fc21-4d87-a559-7af850fcba37","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.2295601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9cab17e7-f281-4ee3-81b2-5e011986f8a5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.229684} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"495c355d-856d-4b9c-a664-e49b464f8ab3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049712.2338088} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6c10d730b2ae078fc34d5c7584373d29"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"6c10d730b2ae078fc34d5c7584373d29","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c10d730b2ae078fc34d5c7584373d29"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c2aa0d58771f1292a238d6855350356","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1c2aa0d58771f1292a238d6855350356","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/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":"1c2aa0d58771f1292a238d6855350356"} device-1 | {"level":"info","message":"OPTIONS /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/websocket 200 1ms","method":"OPTIONS","requestID":"1c2aa0d58771f1292a238d6855350356","responseTime":1,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"5d046c819da675fa2519fb355ada6a1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d046c819da675fa2519fb355ada6a1a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5d046c819da675fa2519fb355ada6a1a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.402036,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5d046c819da675fa2519fb355ada6a1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d046c819da675fa2519fb355ada6a1a","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f79edd1148151213fa28b833c255313f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f79edd1148151213fa28b833c255313f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/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":"f79edd1148151213fa28b833c255313f"} device-1 | {"level":"info","message":"OPTIONS /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/websocket 200 0ms","method":"OPTIONS","requestID":"f79edd1148151213fa28b833c255313f","responseTime":0,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"f6121ef2202f21478b1475bef5a88e48"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f6121ef2202f21478b1475bef5a88e48","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5d046c819da675fa2519fb355ada6a1a"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/websocket 200 25ms","method":"POST","requestID":"5d046c819da675fa2519fb355ada6a1a","responseTime":25,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d046c819da675fa2519fb355ada6a1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f6121ef2202f21478b1475bef5a88e48"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"f6121ef2202f21478b1475bef5a88e48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6121ef2202f21478b1475bef5a88e48","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f6121ef2202f21478b1475bef5a88e48"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/websocket 200 9ms","method":"POST","requestID":"f6121ef2202f21478b1475bef5a88e48","responseTime":9,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.016","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":"f6121ef2202f21478b1475bef5a88e48"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66f6e9d8053121ec8f23d401b448d4b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"66f6e9d8053121ec8f23d401b448d4b4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"66f6e9d8053121ec8f23d401b448d4b4"} device-1 | {"level":"info","message":"OPTIONS /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 0ms","method":"OPTIONS","requestID":"66f6e9d8053121ec8f23d401b448d4b4","responseTime":0,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6038692aa75caead3de8f4b8d0f9c5bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6038692aa75caead3de8f4b8d0f9c5bb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"6038692aa75caead3de8f4b8d0f9c5bb"} device-1 | {"level":"info","message":"OPTIONS /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 0ms","method":"OPTIONS","requestID":"6038692aa75caead3de8f4b8d0f9c5bb","responseTime":0,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.014344,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"5de323997d6fe4b51455ef6c3849b95a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5de323997d6fe4b51455ef6c3849b95a","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5de323997d6fe4b51455ef6c3849b95a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5de323997d6fe4b51455ef6c3849b95a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5de323997d6fe4b51455ef6c3849b95a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"31ea1706-9e45-451a-acba-12af25b5d348","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.277253} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"b1035b6c-0c88-420c-9d7a-37e2c08a3b66","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.279183} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5de323997d6fe4b51455ef6c3849b95a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e0605f8-bdc7-4957-b581-fe0cebcd46b4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.2833009} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1053ffc0-3561-4241-ba2e-aeb9049c5e86","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.2845879} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5de323997d6fe4b51455ef6c3849b95a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"caff909f-520b-4d39-928a-34834c846932","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.2877007} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5de323997d6fe4b51455ef6c3849b95a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5de323997d6fe4b51455ef6c3849b95a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5de323997d6fe4b51455ef6c3849b95a"} device-1 | {"level":"info","message":"PATCH /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 21ms","method":"PATCH","requestID":"5de323997d6fe4b51455ef6c3849b95a","responseTime":21,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"9a670cd6-a85f-4df4-b665-6f83e7d19ae9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.2943988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815"} device-1 | {"level":"info","message":"PATCH /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 34ms","method":"PATCH","requestID":"fc9b9b25c5ed144a729bb7ca9cb87815","responseTime":34,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","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":"fc9b9b25c5ed144a729bb7ca9cb87815"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135141,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e8abb9408b0ec9da691cedbd2bad2e4e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"3b6f3f3f-4e9e-4f57-8959-1f9b3d403c33","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.316736} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e"} device-1 | {"level":"info","message":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 11ms","method":"GET","requestID":"e8abb9408b0ec9da691cedbd2bad2e4e","responseTime":11,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"c0545266bee0843b81469b99aeace541"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c0545266bee0843b81469b99aeace541","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0545266bee0843b81469b99aeace541"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021211,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c0545266bee0843b81469b99aeace541","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0545266bee0843b81469b99aeace541","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"074bd1f8-c2b0-4cd3-802d-33ba8c204644","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.3340793} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c0545266bee0843b81469b99aeace541","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0545266bee0843b81469b99aeace541"} device-1 | {"level":"info","message":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 10ms","method":"GET","requestID":"c0545266bee0843b81469b99aeace541","responseTime":10,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0545266bee0843b81469b99aeace541"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"654218de69e3a568aed1ad02adc8188f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"654218de69e3a568aed1ad02adc8188f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"654218de69e3a568aed1ad02adc8188f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.596832,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"654218de69e3a568aed1ad02adc8188f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"654218de69e3a568aed1ad02adc8188f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to run experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to book experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully booked experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0adb75f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0adbc410-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901697,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0adb75f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0adb75f0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595875,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0adbc410-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0adbc410-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"a64e5c9d-cc72-49c5-a0b0-007a32f2c939","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.3922236} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0adb75f0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"d3332684-03bf-4380-8267-340a18acad6c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.3929822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0adbc410-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0adb75f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 14ms","method":"GET","requestID":"0adb75f0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0adbc410-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 13ms","method":"GET","requestID":"0adbc410-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Setting up experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully locked booking for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to update booking for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully updated booking for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully set up experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ae512e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ae58810-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ae5d630-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully running experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945134,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ae512e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ae512e0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636893,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ae58810-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ae58810-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"1e58104f-91f1-4e45-86c6-da0675583d2c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.46153} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0ae512e0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"ce0104a7-1aaa-4593-bd4d-015b54200f96","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4635184} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0ae58810-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55ddfd04-56c3-45c9-b546-f4a590c46f57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4672668} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ae512e0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.846772,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 21ms","method":"GET","requestID":"0ae512e0-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ae5d630-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","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":"0ae58810-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"0ae5d630-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 20ms","method":"GET","requestID":"0ae58810-793f-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ae8e370-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ae5d630-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling 200 22ms","method":"POST","requestID":"0ae5d630-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ae97fb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb9a57b0-edfc-4b62-b46f-a3d466e35a44","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4759002} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bc2c9dc-d825-4b87-b5c8-7ded8519a506","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4767604} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35a8aeee-9b13-4f09-8494-c15280147671#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35a8aeee-9b13-4f09-8494-c15280147671","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"6adf7e39-0d60-4efe-bd0a-ed1130710cdc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4769967} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.686812,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ae8e370-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","rebac_allow":false,"scope_allow":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":"0ae8e370-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"654218de69e3a568aed1ad02adc8188f","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f5e7783-aa13-4ccb-8642-3285d39969e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.479659} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.65467,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ae97fb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","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":"0ae8e370-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling 200 10ms","method":"POST","requestID":"0ae8e370-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ae97fb0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ae97fb0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling 200 9ms","method":"POST","requestID":"0ae97fb0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0aeadf40-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"654218de69e3a568aed1ad02adc8188f"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"654218de69e3a568aed1ad02adc8188f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"654218de69e3a568aed1ad02adc8188f","responseTime":142,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"caae3678-cac8-431c-a182-59b9e982cf0b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.4887302} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.742132,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0aeadf40-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0aeadf40-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"c5de69a8d1774b9c9dbb50554e792e7e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c5de69a8d1774b9c9dbb50554e792e7e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5de69a8d1774b9c9dbb50554e792e7e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0aeadf40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling 200 10ms","method":"POST","requestID":"0aeadf40-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808264,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5de69a8d1774b9c9dbb50554e792e7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0aecb400-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5de69a8d1774b9c9dbb50554e792e7e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0aecdb10-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0aecb400-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0aecb400-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.567956,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0aecdb10-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0aecdb10-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"cf7df8f6-4b0d-4ccc-be66-9889dddddbb2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5013697} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c5de69a8d1774b9c9dbb50554e792e7e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5de69a8d1774b9c9dbb50554e792e7e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5de69a8d1774b9c9dbb50554e792e7e"} device-1 | {"level":"info","message":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 15ms","method":"GET","requestID":"c5de69a8d1774b9c9dbb50554e792e7e","responseTime":15,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.183313253Z"}]},"request_id":"4d2e077d-c00d-42bf-ba38-baf2ba96a618","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5064356} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0aecb400-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"f4fb4dc9-c3f4-407f-824d-37714e22ab61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5101345} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0aecdb10-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"e3e42d72d46ee7b2a14363d4029c1bef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e3e42d72d46ee7b2a14363d4029c1bef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0aecb400-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca? 200 17ms","method":"GET","requestID":"0aecb400-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3e42d72d46ee7b2a14363d4029c1bef"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0aecdb10-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 18ms","method":"GET","requestID":"0aecdb10-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Building connection plan","requestID":"654218de69e3a568aed1ad02adc8188f"} 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":"11536abd-0b26-4c61-ab39-b227f07bd36e"},{"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":"6de45f04-a5d2-4ae4-a931-2429600239e2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"4f730396-cf70-43df-a7d3-ac24195d8b00"}]},"level":"info","message":"Built pairwise service configurations","requestID":"654218de69e3a568aed1ad02adc8188f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251038,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e3e42d72d46ee7b2a14363d4029c1bef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3e42d72d46ee7b2a14363d4029c1bef","responseTime":4,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0af00f60-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0af00f60-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0af00f60-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4?id=9a21b750-6fc7-48a3-80de-8efff9f4c56c","ws://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4?id=fd49d918-3b4f-422a-aeb1-84c2b3eed25d"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"654218de69e3a568aed1ad02adc8188f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:52.229527351Z"}]},"request_id":"5b5b1e80-8cf1-4e15-a674-ca303f89e97c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5216289} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3e42d72d46ee7b2a14363d4029c1bef","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3e42d72d46ee7b2a14363d4029c1bef"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.717662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? 200 11ms","method":"GET","requestID":"e3e42d72d46ee7b2a14363d4029c1bef","responseTime":11,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e3e42d72d46ee7b2a14363d4029c1bef"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0af08490-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0af08490-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"970f91dc-5ca2-474b-af4d-f0dfe24fc554","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.531119} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7b767e6-b0fd-4c32-864e-897df2fb0cb7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5312865} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0af08490-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b'","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b'","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 21ms","method":"POST","requestID":"0af08490-793f-11ef-9733-5750b05365a5","responseTime":21,"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":"0af08490-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0af56690-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\"","requestID":"0af56690-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0af56690-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0af58da0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9a21b750-6fc7-48a3-80de-8efff9f4c56c\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\"","requestID":"0af58da0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0af58da0-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce3b59cf6d62d922257dd9dfee17e5ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ce3b59cf6d62d922257dd9dfee17e5ca","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"}}},"level":"info","message":"received a callback","requestID":"ce3b59cf6d62d922257dd9dfee17e5ca"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"ce3b59cf6d62d922257dd9dfee17e5ca","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"ce3b59cf6d62d922257dd9dfee17e5ca"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"654218de69e3a568aed1ad02adc8188f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0af9ac50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7780086b-8f29-4872-9731-af575bacb46d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.5860536} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.524149,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0af9ac50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0af9ac50-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0af9ac50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling 200 17ms","method":"POST","requestID":"0af9ac50-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0bc44e912b1061f3e4e8399d3572ee4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d0bc44e912b1061f3e4e8399d3572ee4","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0afc9280-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"}}},"level":"info","message":"received a callback","requestID":"d0bc44e912b1061f3e4e8399d3572ee4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"133c00d4-377d-4d64-a1df-7f0a5094e167","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.6055837} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.654216,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0afd7ce0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0afc9280-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0afc9280-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0afc9280-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling 200 10ms","method":"POST","requestID":"0afc9280-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1f0251c8-1652-406a-abbc-5dc273a2838b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f849487-8b72-4680-a57c-abff65d66233","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.610413} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.609918,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0afd7ce0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0afd7ce0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0afd7ce0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b 200 8ms","method":"GET","requestID":"0afd7ce0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"d0bc44e912b1061f3e4e8399d3572ee4","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"d0bc44e912b1061f3e4e8399d3572ee4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b00ff50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2898c9e-bdea-41ed-881c-ae7e833f035a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.633908} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.350701,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b00ff50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b00ff50-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b00ff50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling 200 9ms","method":"POST","requestID":"0b00ff50-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b02ad00-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c16d3fa4-f2ba-41d1-99fb-c24c21d84a67","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.643737} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.199727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b02ad00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b02ad00-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b02ad00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling 200 7ms","method":"POST","requestID":"0b02ad00-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/35a8aeee-9b13-4f09-8494-c15280147671","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.990985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6ba16da2f69ef659d9eec507f2a7f9c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/35a8aeee-9b13-4f09-8494-c15280147671","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/35a8aeee-9b13-4f09-8494-c15280147671 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5"} experiment-1 | {"level":"info","message":"GET /experiments/35a8aeee-9b13-4f09-8494-c15280147671 200 10ms","method":"GET","requestID":"6ba16da2f69ef659d9eec507f2a7f9c5","responseTime":10,"status":200,"url":"/experiments/35a8aeee-9b13-4f09-8494-c15280147671"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"015457c584b96677477e939e49525d0a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"015457c584b96677477e939e49525d0a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/35a8aeee-9b13-4f09-8494-c15280147671","requestID":"015457c584b96677477e939e49525d0a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.717889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"015457c584b96677477e939e49525d0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"015457c584b96677477e939e49525d0a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Attempting to finish experiment","requestID":"015457c584b96677477e939e49525d0a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0b0a0000-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.045137,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b0a0000-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b0a0000-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","device":"844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4?id=9a21b750-6fc7-48a3-80de-8efff9f4c56c HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.146","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":"f91c97c857c7125b666e36fd8c5b4edd"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4?id=fd49d918-3b4f-422a-aeb1-84c2b3eed25d HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.147","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":"4d6845d8924cd403447fa3227c9badfb"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b","device":"fdf1aea1-23b9-474d-b4bc-bc75dd63731b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9a21b750-6fc7-48a3-80de-8efff9f4c56c\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9a21b750-6fc7-48a3-80de-8efff9f4c56c\" from room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" in room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"fd49d918-3b4f-422a-aeb1-84c2b3eed25d\" from room \"http://localhost/rooms/47570d24-2274-4b4b-a4b3-e6e8264e67e4\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"55be493fc5b20ba8a19e2c7e96a39784","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1f0251c8-1652-406a-abbc-5dc273a2838b': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1f0251c8-1652-406a-abbc-5dc273a2838b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"df1d9620-437d-4a17-8a6b-7e9c58818e47","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7026806} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"55be493fc5b20ba8a19e2c7e96a39784","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6effd154-dd4f-4441-a31c-b254fcf0fe3d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7028346} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"}}},"level":"info","message":"received a callback","requestID":"55be493fc5b20ba8a19e2c7e96a39784"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c95409a096287464d7ab8e3246ec8a89","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 7ms","method":"POST","requestID":"0b0a0000-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c95409a096287464d7ab8e3246ec8a89","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"}}},"level":"info","message":"received a callback","requestID":"c95409a096287464d7ab8e3246ec8a89"} device-1 | {"data":{"peerconnection":"1f0251c8-1652-406a-abbc-5dc273a2838b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0b0a0000-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b 204 33ms","method":"DELETE","requestID":"0b0a0000-793f-11ef-9733-5750b05365a5","responseTime":33,"status":204,"url":"/peerconnections/1f0251c8-1652-406a-abbc-5dc273a2838b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35a8aeee-9b13-4f09-8494-c15280147671"},"level":"info","message":"Successfully finished experiment","requestID":"015457c584b96677477e939e49525d0a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b115300-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e7bc6a2-92db-426a-b945-75cc54483478","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7410233} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.237595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b115300-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b115300-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b115300-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling 200 8ms","method":"POST","requestID":"0b115300-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b12d9a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35a8aeee-9b13-4f09-8494-c15280147671': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35a8aeee-9b13-4f09-8494-c15280147671","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"83686c33-816f-4459-8c71-6c497c53c5d1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7486272} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f21ecd2-0eb0-4200-b429-858febb8775b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7487936} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"015457c584b96677477e939e49525d0a","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffdf1aea1-23b9-474d-b4bc-bc75dd63731b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2a731e3-ebca-4470-942e-f73691962d73","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.7508411} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.16134,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0b12d9a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b12d9a0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b12d9a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling 200 8ms","method":"POST","requestID":"0b12d9a0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/35a8aeee-9b13-4f09-8494-c15280147671","requestID":"015457c584b96677477e939e49525d0a"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/35a8aeee-9b13-4f09-8494-c15280147671 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"015457c584b96677477e939e49525d0a"} experiment-1 | {"level":"info","message":"DELETE /experiments/35a8aeee-9b13-4f09-8494-c15280147671 204 126ms","method":"DELETE","requestID":"015457c584b96677477e939e49525d0a","responseTime":126,"status":204,"url":"/experiments/35a8aeee-9b13-4f09-8494-c15280147671"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"55be493fc5b20ba8a19e2c7e96a39784","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"55be493fc5b20ba8a19e2c7e96a39784"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"c95409a096287464d7ab8e3246ec8a89","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"c95409a096287464d7ab8e3246ec8a89"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"79584411294321ea92b5ac05d1deab99"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79584411294321ea92b5ac05d1deab99","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"79584411294321ea92b5ac05d1deab99"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.590","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":"e61f4d0b36fcac360998a28ea039d925"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.581","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":"d3e3551808e56c3460bebb8df83b6e21"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.042719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"79584411294321ea92b5ac05d1deab99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","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/844b5c8f-51a3-4bc1-9f97-8cf3ec4c0cca' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/fdf1aea1-23b9-474d-b4bc-bc75dd63731b' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c972b3f6-afb7-4039-8b20-2cf51fb6832e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8289688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9eff02ab-fb0a-488e-bd11-18000354accf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8332636} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9844f22f-36ed-4c92-86c4-deb29ee729ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8450618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55712aa1-3e65-4eda-b049-2310a6e0e507","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.845175} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"9a2d013e-b57a-47f2-aa0c-d8923d0db896","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.848713} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"79584411294321ea92b5ac05d1deab99"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"79584411294321ea92b5ac05d1deab99","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79584411294321ea92b5ac05d1deab99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk","level":"info","message":"auth send jwt","requestID":"267e733525186799acfd08167dfc94b9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"267e733525186799acfd08167dfc94b9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"267e733525186799acfd08167dfc94b9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.645596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"267e733525186799acfd08167dfc94b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049714,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNH0.zOjNHI998WHc3Qda0TwEWtHIYn_5soYhj14IUe7jhsk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ad8eb05-9ee8-4ad3-abe1-7f8747fc57d6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.870971} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c0df2f5-8290-4cbd-98f6-b01179b5667c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8747187} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"817efe92-1add-49a2-be51-5f4d32deab59","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8843431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67a37d30-4bac-4da3-9e70-342fef4427a1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8844903} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"f92f6995-80c3-437e-80e5-9d693ee4d440","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049714.8876252} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"267e733525186799acfd08167dfc94b9"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"267e733525186799acfd08167dfc94b9","responseTime":35,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"267e733525186799acfd08167dfc94b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNX0._biqm0YidE7c9N92eH8pEqKbSu6Wzaa3ZOFB9KjaKH0","level":"info","message":"auth send jwt","requestID":"1a571f6d819e1438b897dfa768d2a79c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a571f6d819e1438b897dfa768d2a79c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1a571f6d819e1438b897dfa768d2a79c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683143,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1a571f6d819e1438b897dfa768d2a79c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049715,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNX0._biqm0YidE7c9N92eH8pEqKbSu6Wzaa3ZOFB9KjaKH0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a571f6d819e1438b897dfa768d2a79c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"cd1a2265-9658-4a7b-8d83-2c0d249cd3b9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049715.3732946} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1a571f6d819e1438b897dfa768d2a79c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24e03daa-da25-4403-87e4-8d9d99eaebe6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049715.3799887} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1a571f6d819e1438b897dfa768d2a79c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"5c9116d3-6ce7-4712-858e-996b02fbf72e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049715.3927176} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1a571f6d819e1438b897dfa768d2a79c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1a571f6d819e1438b897dfa768d2a79c"} gateway-1 | {"time_local":"23/Sep/2024:00:01:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1a571f6d819e1438b897dfa768d2a79c"} device-1 | {"level":"info","message":"PATCH /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b 200 35ms","method":"PATCH","requestID":"1a571f6d819e1438b897dfa768d2a79c","responseTime":35,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNX0._biqm0YidE7c9N92eH8pEqKbSu6Wzaa3ZOFB9KjaKH0","level":"info","message":"auth send jwt","requestID":"95e295fd89645d5e163c3f930402c237"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"95e295fd89645d5e163c3f930402c237","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"95e295fd89645d5e163c3f930402c237"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354154,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"95e295fd89645d5e163c3f930402c237","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049715,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNX0._biqm0YidE7c9N92eH8pEqKbSu6Wzaa3ZOFB9KjaKH0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"95e295fd89645d5e163c3f930402c237","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"95e295fd89645d5e163c3f930402c237"} gateway-1 | {"time_local":"23/Sep/2024:00:01:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"95e295fd89645d5e163c3f930402c237"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/websocket 200 19ms","method":"POST","requestID":"95e295fd89645d5e163c3f930402c237","responseTime":19,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"510537ca137cc88bf0d9a4e63a49c1f0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"510537ca137cc88bf0d9a4e63a49c1f0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/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":"510537ca137cc88bf0d9a4e63a49c1f0"} device-1 | {"level":"info","message":"OPTIONS /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/websocket 200 1ms","method":"OPTIONS","requestID":"510537ca137cc88bf0d9a4e63a49c1f0","responseTime":1,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNn0.Gbqc0SacroDVXBmtVmyKqEPUeieLBVeF1BjaJ6eIAb0","level":"info","message":"auth send jwt","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244859,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"93d5c5e8ee7de431c783fa429c1cc1a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049716,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNn0.Gbqc0SacroDVXBmtVmyKqEPUeieLBVeF1BjaJ6eIAb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7"} gateway-1 | {"time_local":"23/Sep/2024:00:01:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7"} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/websocket 200 21ms","method":"POST","requestID":"93d5c5e8ee7de431c783fa429c1cc1a7","responseTime":21,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9ed0893a7f9ad3b9456d3812e78eec5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e9ed0893a7f9ad3b9456d3812e78eec5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 1ms","method":"OPTIONS","requestID":"e9ed0893a7f9ad3b9456d3812e78eec5","responseTime":1,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"e9ed0893a7f9ad3b9456d3812e78eec5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNn0.Gbqc0SacroDVXBmtVmyKqEPUeieLBVeF1BjaJ6eIAb0","level":"info","message":"auth send jwt","requestID":"5edc8c838f1635c0c91e27906652cb63"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5edc8c838f1635c0c91e27906652cb63","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5edc8c838f1635c0c91e27906652cb63"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2416,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5edc8c838f1635c0c91e27906652cb63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049716,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxNn0.Gbqc0SacroDVXBmtVmyKqEPUeieLBVeF1BjaJ6eIAb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5edc8c838f1635c0c91e27906652cb63","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"64b3140a-1e45-488a-99cf-36dc73d0c8ba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049716.9889867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5edc8c838f1635c0c91e27906652cb63","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cd21174-a5cd-4a37-bb8e-33b6e88e7afc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049716.995856} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5edc8c838f1635c0c91e27906652cb63","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"b63e8bba-3d9d-4ee0-b016-ace5e91ea1d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.0090826} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5edc8c838f1635c0c91e27906652cb63","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5edc8c838f1635c0c91e27906652cb63"} device-1 | {"level":"info","message":"PATCH /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 41ms","method":"PATCH","requestID":"5edc8c838f1635c0c91e27906652cb63","responseTime":41,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","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":"5edc8c838f1635c0c91e27906652cb63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"911ae0379601485a6c0fd46347dfdbad"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"911ae0379601485a6c0fd46347dfdbad","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"911ae0379601485a6c0fd46347dfdbad"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187055,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"911ae0379601485a6c0fd46347dfdbad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"911ae0379601485a6c0fd46347dfdbad","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"60c3806f-769f-45f3-87ff-71b7f32b37bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.0427876} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"911ae0379601485a6c0fd46347dfdbad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"911ae0379601485a6c0fd46347dfdbad"} device-1 | {"level":"info","message":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 16ms","method":"GET","requestID":"911ae0379601485a6c0fd46347dfdbad","responseTime":16,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"911ae0379601485a6c0fd46347dfdbad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.204049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e0f943f96b8104c28b2d3ba03c8b71fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"ffcf6bc6-e2d0-4c5a-a149-357431030b08","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.0664434} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc"} device-1 | {"level":"info","message":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? 200 17ms","method":"GET","requestID":"e0f943f96b8104c28b2d3ba03c8b71fc","responseTime":17,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"1665dc4753729388209fad47bdf4bff0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1665dc4753729388209fad47bdf4bff0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1665dc4753729388209fad47bdf4bff0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.416432,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1665dc4753729388209fad47bdf4bff0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1665dc4753729388209fad47bdf4bff0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to run experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to book experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully booked experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c7db440-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c7db440-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c7db440-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005289,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"d73e3dac-87ef-4711-afe7-30a76984071f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.1350174} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c7db440-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"85b780e8-8393-4162-bc90-6f9669259e2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.1365223} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c7db440-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 19ms","method":"GET","requestID":"0c7db440-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? 200 19ms","method":"GET","requestID":"0c7ddb50-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Setting up experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully set up experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c87c660-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c881480-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c8862a0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully running experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.454095,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c87c660-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0c87c660-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089526,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c881480-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0c881480-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.881061,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36db5f72-d95e-402b-abfe-0e92c8274e29","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2028725} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c8862a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","rebac_allow":false,"scope_allow":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":"0c8862a0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"4aa21c4f-2199-45b8-a68c-a1ef82360cf1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2168207} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0c87c660-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"bac0e911-ab07-4336-bab4-7ba6ae1f4d68","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2204046} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c8862a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c881480-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb91a8e89-acf5-4f00-ad88-4c6eae6bc60e#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb91a8e89-acf5-4f00-ad88-4c6eae6bc60e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"68d45604-11b1-4a1b-b33e-98fb0f673875","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2243373} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c36abe9-c363-435e-9657-c4165f09b2d2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2251203} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"1665dc4753729388209fad47bdf4bff0","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling 200 34ms","method":"POST","requestID":"0c8862a0-793f-11ef-9733-5750b05365a5","responseTime":34,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1665dc4753729388209fad47bdf4bff0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"1665dc4753729388209fad47bdf4bff0","responseTime":152,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1665dc4753729388209fad47bdf4bff0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c8ecb40-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"77dc2459dcdf89e0303db0629ef8b6aa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"77dc2459dcdf89e0303db0629ef8b6aa","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c87c660-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 50ms","method":"GET","requestID":"0c87c660-793f-11ef-9733-5750b05365a5","responseTime":50,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a9babb0-9dee-4702-a84d-9d4a78fed885","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2409852} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77dc2459dcdf89e0303db0629ef8b6aa"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.954152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c881480-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? 200 51ms","method":"GET","requestID":"0c881480-793f-11ef-9733-5750b05365a5","responseTime":51,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c8ecb40-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","rebac_allow":false,"scope_allow":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":"0c8ecb40-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"77dc2459dcdf89e0303db0629ef8b6aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c902ad0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77dc2459dcdf89e0303db0629ef8b6aa","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c8ecb40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling 200 14ms","method":"POST","requestID":"0c8ecb40-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11c70b6c-464d-47df-95f7-f90e4198d7de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2495432} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.554595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c902ad0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c902ad0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"39a18d68-bc7a-4fa1-b59c-45d0a17298c6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2506552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"77dc2459dcdf89e0303db0629ef8b6aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c902ad0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling 200 9ms","method":"POST","requestID":"0c902ad0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77dc2459dcdf89e0303db0629ef8b6aa"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77dc2459dcdf89e0303db0629ef8b6aa"} device-1 | {"level":"info","message":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 14ms","method":"GET","requestID":"77dc2459dcdf89e0303db0629ef8b6aa","responseTime":14,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c91d880-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"a888377629ace5d59f64030d648a460c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a888377629ace5d59f64030d648a460c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a888377629ace5d59f64030d648a460c"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e07395f7-f600-4065-b256-a28b7f513b70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2610304} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.465723,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c91d880-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","rebac_allow":false,"scope_allow":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":"0c91d880-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.590065,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a888377629ace5d59f64030d648a460c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a888377629ace5d59f64030d648a460c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c91d880-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling 200 10ms","method":"POST","requestID":"0c91d880-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"f1452612-6355-4577-b901-3305912b0800","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2668295} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a888377629ace5d59f64030d648a460c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c93ad40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c93d450-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934644,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c93ad40-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a888377629ace5d59f64030d648a460c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0c93ad40-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890584,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? 200 13ms","method":"GET","requestID":"a888377629ace5d59f64030d648a460c","responseTime":13,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c93d450-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a888377629ace5d59f64030d648a460c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0c93d450-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.845031386Z"}]},"request_id":"a48557cb-b0fa-4168-be80-a845fed7bd1a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2763991} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c93ad40-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:54.884311517Z"}]},"request_id":"486f3da0-4b3b-4f15-8d28-0ece1494a15d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2773445} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0c93d450-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c93ad40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b? 200 12ms","method":"GET","requestID":"0c93ad40-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c93d450-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b? 200 12ms","method":"GET","requestID":"0c93d450-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Building connection plan","requestID":"1665dc4753729388209fad47bdf4bff0"} 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":"96889864-b56b-4d2b-be15-14169de8154d"},{"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":"71d8a80a-af29-41ba-8dac-e23bc11ab6b4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"553cda77-4113-4536-b238-f36aadb63fbd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1665dc4753729388209fad47bdf4bff0"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0c95f730-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0c95f730-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0c95f730-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588?id=7b0ca854-3403-4621-af2a-ed8d5604968d","ws://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588?id=5a489a7e-853c-4c9b-ade4-c79d4bf32a1e"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"1665dc4753729388209fad47bdf4bff0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.676792,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0c966c60-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0c966c60-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"bbaff7b6-b619-404c-b1a1-186ed0addd99","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.2965143} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d3351b6-1b20-4a90-abbe-b217c20902e2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.297718} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0c966c60-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0'","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0'","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"0c966c60-793f-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0c966c60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0c9b7570-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\"","requestID":"0c9b7570-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0c9b7570-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4887cff279aca02ab71eceb45804ab2f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4887cff279aca02ab71eceb45804ab2f","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"4887cff279aca02ab71eceb45804ab2f"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0c9c11b0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a489a7e-853c-4c9b-ade4-c79d4bf32a1e\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\"","requestID":"0c9c11b0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0c9c11b0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0afb9ad0aa62ba39b7bcacf78043793c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0afb9ad0aa62ba39b7bcacf78043793c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"4887cff279aca02ab71eceb45804ab2f","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"4887cff279aca02ab71eceb45804ab2f"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"0afb9ad0aa62ba39b7bcacf78043793c"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ab613705940ef1a3ac6242bca1807045","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ab613705940ef1a3ac6242bca1807045","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 20ms","method":"POST","requestID":"0afb9ad0aa62ba39b7bcacf78043793c","responseTime":20,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1665dc4753729388209fad47bdf4bff0"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.023","http_referrer":"","http_user_agent":"node-fetch","requestID":"0afb9ad0aa62ba39b7bcacf78043793c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ca0f3b0-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"ab613705940ef1a3ac6242bca1807045"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"55297d195da1eb6dd084c258b50a25b3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"55297d195da1eb6dd084c258b50a25b3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bd7baee-18db-4f43-9606-9ee7a458b130","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.3599043} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"ab613705940ef1a3ac6242bca1807045","responseTime":5,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.748096,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"ab613705940ef1a3ac6242bca1807045"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ca0f3b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","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":{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"55297d195da1eb6dd084c258b50a25b3"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ca0f3b0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0ca27a50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ca0f3b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3494ceb-6345-41f2-9fb5-cbeb8beceeb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96a45b13-02fa-4b94-955d-9ed4462f3efe","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.369129} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling 200 14ms","method":"POST","requestID":"0ca0f3b0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.500952,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ca27a50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ca27a50-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ca364b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0ca27a50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} device-1 | {"level":"info","message":"GET /peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0 200 9ms","method":"GET","requestID":"0ca27a50-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7965a426-1af6-4fe7-a647-90f4f23a4138","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.3752053} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.214688,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ca364b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ca364b0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ca364b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling 200 8ms","method":"POST","requestID":"0ca364b0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"55297d195da1eb6dd084c258b50a25b3","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"55297d195da1eb6dd084c258b50a25b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ca623d0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f165a07a-e221-4cd4-b682-0e5446f3b96e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.3935666} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.283612,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ca623d0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ca623d0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ca623d0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling 200 8ms","method":"POST","requestID":"0ca623d0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ca7aa70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dae0eec2-0e7b-4612-8517-b910993d7218","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.4031403} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.283182,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ca7aa70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ca7aa70-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ca7aa70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling 200 8ms","method":"POST","requestID":"0ca7aa70-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"4d59f807e57dc9a24cae25b7241ffde7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4d59f807e57dc9a24cae25b7241ffde7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","requestID":"4d59f807e57dc9a24cae25b7241ffde7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.310297,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4d59f807e57dc9a24cae25b7241ffde7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d59f807e57dc9a24cae25b7241ffde7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","requestID":"4d59f807e57dc9a24cae25b7241ffde7"} experiment-1 | {"level":"info","message":"GET /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e 200 12ms","method":"GET","requestID":"4d59f807e57dc9a24cae25b7241ffde7","responseTime":12,"status":200,"url":"/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d59f807e57dc9a24cae25b7241ffde7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cd166d5465b4dcf95b6f828c0c07daba","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.706552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cd166d5465b4dcf95b6f828c0c07daba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"cd166d5465b4dcf95b6f828c0c07daba","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Attempting to finish experiment","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0cb14760-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.18129,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0cb14760-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0cb14760-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ce34abaa-c991-422f-9863-4ee50d194588?id=7b0ca854-3403-4621-af2a-ed8d5604968d HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"47d9e1667875c760503c3c4f13c7f931"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7b0ca854-3403-4621-af2a-ed8d5604968d\" from room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","device":"00855a10-d960-42f5-8b56-c66c4ba7f95b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ce34abaa-c991-422f-9863-4ee50d194588?id=5a489a7e-853c-4c9b-ade4-c79d4bf32a1e HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.151","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":"b4af26088a9d03e5ef218fb2ff19a9de"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5a489a7e-853c-4c9b-ade4-c79d4bf32a1e\" in room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5a489a7e-853c-4c9b-ade4-c79d4bf32a1e\" from room \"http://localhost/rooms/ce34abaa-c991-422f-9863-4ee50d194588\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"68e495bd313422ce0569b742e45893dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3494ceb-6345-41f2-9fb5-cbeb8beceeb0': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3494ceb-6345-41f2-9fb5-cbeb8beceeb0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"50313c51-3130-4bbe-b248-511b4e6208a9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.4765162} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"68e495bd313422ce0569b742e45893dc","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7b944098caeeb66d5db6c52c9031801","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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-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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"68e495bd313422ce0569b742e45893dc"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"b7b944098caeeb66d5db6c52c9031801","responseTime":0,"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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00de8aa3-b3b6-4b0e-9033-0b8649a368fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.4768522} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0cb14760-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"}}},"level":"info","message":"received a callback","requestID":"b7b944098caeeb66d5db6c52c9031801"} device-1 | {"data":{"peerconnection":"f3494ceb-6345-41f2-9fb5-cbeb8beceeb0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0cb14760-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0 204 33ms","method":"DELETE","requestID":"0cb14760-793f-11ef-9733-5750b05365a5","responseTime":33,"status":204,"url":"/peerconnections/f3494ceb-6345-41f2-9fb5-cbeb8beceeb0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"},"level":"info","message":"Successfully finished experiment","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0cb8e880-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2bf46853-d216-4b85-9228-7ec5ddc4822b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"589012a5-8763-49f1-81e6-67a5db43cd57","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.5163696} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.715851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0cb8e880-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0cb8e880-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0cb8e880-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling 200 9ms","method":"POST","requestID":"0cb8e880-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb91a8e89-acf5-4f00-ad88-4c6eae6bc60e': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb91a8e89-acf5-4f00-ad88-4c6eae6bc60e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"cb062a28-0b90-4ca4-af01-2b9887a53d65","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.5225756} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0cba6f20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be7cff87-1171-4c46-8d65-f26cd32b7a66","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.522742} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cd166d5465b4dcf95b6f828c0c07daba","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00855a10-d960-42f5-8b56-c66c4ba7f95b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ea96cb9-00a9-4e92-b7eb-3d7bf909e3bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.5276418} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.327173,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0cba6f20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0cba6f20-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0cba6f20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling 200 9ms","method":"POST","requestID":"0cba6f20-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd166d5465b4dcf95b6f828c0c07daba"} experiment-1 | {"level":"info","message":"DELETE /experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e 204 132ms","method":"DELETE","requestID":"cd166d5465b4dcf95b6f828c0c07daba","responseTime":132,"status":204,"url":"/experiments/b91a8e89-acf5-4f00-ad88-4c6eae6bc60e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"2.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c794cbe39d97ddb336f8b53f145a66d9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"68e495bd313422ce0569b742e45893dc","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"68e495bd313422ce0569b742e45893dc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"b7b944098caeeb66d5db6c52c9031801","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:01: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"b7b944098caeeb66d5db6c52c9031801"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.662","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":"06704440fa20e8c31f5794a51cedb836"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.958297,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2bf46853-d216-4b85-9228-7ec5ddc4822b' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a0326fdb-cc9c-4707-a840-5294241c34dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6126754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/00855a10-d960-42f5-8b56-c66c4ba7f95b' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0bfc59b-15e1-46e8-8b55-73192b504d11","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6173553} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"95847abd-986a-4d59-b1d6-d865fe0e42cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.626834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"159fe9cd-437d-4302-a6c8-b61a2c6016ef","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.626876} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"b24d901f-414a-466f-8009-0fcdcada9e8a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6310103} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6aa499ca44e1f5a68f3884bb7b7e58ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc","level":"info","message":"auth send jwt","requestID":"b1dc652837c290d6fe5923d565ff7415"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b1dc652837c290d6fe5923d565ff7415"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.764052,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b1dc652837c290d6fe5923d565ff7415","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049717,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxN30.Yr8wtVGhEEcEB0zS_YYveVOuFEZXtFNsWDeMYaiCrFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bbfc2a3c-2be6-4b19-9293-425432bc0384","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6598144} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5def52c-3b27-4185-93ce-e9e4f6a64095","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6642182} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8a243495-e555-4fe4-b40f-335bcc54b028","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6745872} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d951033-ae4e-4b88-83fb-c670f56d241e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6746395} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"ac6aa00b-134d-4dd1-882c-0ab485266009","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049717.6788828} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b1dc652837c290d6fe5923d565ff7415"} gateway-1 | {"time_local":"23/Sep/2024:00:01:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1dc652837c290d6fe5923d565ff7415"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"b1dc652837c290d6fe5923d565ff7415","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOH0.-IlwAo3vLuXEKJp7uVXPm01fOxRnKJACLaMWSG0V-0w","level":"info","message":"auth send jwt","requestID":"85fcc588700b058040b08312f519b6ee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85fcc588700b058040b08312f519b6ee","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"85fcc588700b058040b08312f519b6ee"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666589,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"85fcc588700b058040b08312f519b6ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049718,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOH0.-IlwAo3vLuXEKJp7uVXPm01fOxRnKJACLaMWSG0V-0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"85fcc588700b058040b08312f519b6ee","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"fb6aa69f-91a4-42c4-8c87-121273f8cfb2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049718.1579475} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"85fcc588700b058040b08312f519b6ee","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1529c793-aea8-427c-ab28-80effc92dbed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049718.165173} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"85fcc588700b058040b08312f519b6ee","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"1c7a90da-8964-48b5-bb0c-950bb0424fd1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049718.1788766} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"85fcc588700b058040b08312f519b6ee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"85fcc588700b058040b08312f519b6ee"} gateway-1 | {"time_local":"23/Sep/2024:00:01:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"85fcc588700b058040b08312f519b6ee"} device-1 | {"level":"info","message":"PATCH /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e 200 32ms","method":"PATCH","requestID":"85fcc588700b058040b08312f519b6ee","responseTime":32,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOH0.-IlwAo3vLuXEKJp7uVXPm01fOxRnKJACLaMWSG0V-0w","level":"info","message":"auth send jwt","requestID":"2e72ef7c9ef5ad972bbb743225f3452e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2e72ef7c9ef5ad972bbb743225f3452e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2e72ef7c9ef5ad972bbb743225f3452e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2e72ef7c9ef5ad972bbb743225f3452e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049718,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOH0.-IlwAo3vLuXEKJp7uVXPm01fOxRnKJACLaMWSG0V-0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e72ef7c9ef5ad972bbb743225f3452e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2e72ef7c9ef5ad972bbb743225f3452e"} gateway-1 | {"time_local":"23/Sep/2024:00:01:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2e72ef7c9ef5ad972bbb743225f3452e"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/websocket 200 22ms","method":"POST","requestID":"2e72ef7c9ef5ad972bbb743225f3452e","responseTime":22,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"408c0689773ca6c69737bc1364d3788a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"408c0689773ca6c69737bc1364d3788a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/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":"408c0689773ca6c69737bc1364d3788a"} device-1 | {"level":"info","message":"OPTIONS /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/websocket 200 1ms","method":"OPTIONS","requestID":"408c0689773ca6c69737bc1364d3788a","responseTime":1,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0","level":"info","message":"auth send jwt","requestID":"8fd44b87aa95066c7022c434930a3e0b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8fd44b87aa95066c7022c434930a3e0b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8fd44b87aa95066c7022c434930a3e0b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8fd44b87aa95066c7022c434930a3e0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fd44b87aa95066c7022c434930a3e0b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8fd44b87aa95066c7022c434930a3e0b"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8fd44b87aa95066c7022c434930a3e0b"} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/websocket 200 20ms","method":"POST","requestID":"8fd44b87aa95066c7022c434930a3e0b","responseTime":20,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8acad44a5eb3b29d9641d99c97b1f1e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8acad44a5eb3b29d9641d99c97b1f1e0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8acad44a5eb3b29d9641d99c97b1f1e0"} device-1 | {"level":"info","message":"OPTIONS /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 1ms","method":"OPTIONS","requestID":"8acad44a5eb3b29d9641d99c97b1f1e0","responseTime":1,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0","level":"info","message":"auth send jwt","requestID":"95dbc599526f42b3e3e1158b95514e3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"95dbc599526f42b3e3e1158b95514e3f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"95dbc599526f42b3e3e1158b95514e3f"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.471724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"95dbc599526f42b3e3e1158b95514e3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"95dbc599526f42b3e3e1158b95514e3f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"bb8bc538-a497-43f1-b4ef-fe4fbcbad53a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.798988} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"95dbc599526f42b3e3e1158b95514e3f","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50ef9c61-b667-41d5-bfbf-c4b93ce22cec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.806633} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"95dbc599526f42b3e3e1158b95514e3f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"dfdf7511-c338-48c4-8142-d36927fde97c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.8205452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"95dbc599526f42b3e3e1158b95514e3f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"95dbc599526f42b3e3e1158b95514e3f"} device-1 | {"level":"info","message":"PATCH /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 39ms","method":"PATCH","requestID":"95dbc599526f42b3e3e1158b95514e3f","responseTime":39,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","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":"95dbc599526f42b3e3e1158b95514e3f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0","level":"info","message":"auth send jwt","requestID":"633bfbb998192c95a2ecb5226a7c0580"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"633bfbb998192c95a2ecb5226a7c0580","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"633bfbb998192c95a2ecb5226a7c0580"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158661,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"633bfbb998192c95a2ecb5226a7c0580","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"633bfbb998192c95a2ecb5226a7c0580","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"7982eb8a-2ae7-4504-bc4f-1ef59b2c4018","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.8489344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"633bfbb998192c95a2ecb5226a7c0580","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"633bfbb998192c95a2ecb5226a7c0580"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"633bfbb998192c95a2ecb5226a7c0580"} device-1 | {"level":"info","message":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 19ms","method":"GET","requestID":"633bfbb998192c95a2ecb5226a7c0580","responseTime":19,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0","level":"info","message":"auth send jwt","requestID":"767985270326106ade55cadf6456b943"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"767985270326106ade55cadf6456b943","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"767985270326106ade55cadf6456b943"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.365248,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"767985270326106ade55cadf6456b943","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"767985270326106ade55cadf6456b943","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"d7c71593-6e41-4376-a27f-a5831d4f77ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.8771436} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"767985270326106ade55cadf6456b943","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"767985270326106ade55cadf6456b943"} device-1 | {"level":"info","message":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? 200 17ms","method":"GET","requestID":"767985270326106ade55cadf6456b943","responseTime":17,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e?"} gateway-1 | {"time_local":"23/Sep/2024:00:01:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"767985270326106ade55cadf6456b943"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0","level":"info","message":"auth send jwt","requestID":"aec66e731e61100ce818dadc845a18c5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"aec66e731e61100ce818dadc845a18c5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"aec66e731e61100ce818dadc845a18c5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.162586,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"aec66e731e61100ce818dadc845a18c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aec66e731e61100ce818dadc845a18c5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to run experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to book experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully booked experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e29dda0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e29dda0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e29dda0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763159,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:01:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"28518f14-8261-49ff-a3d7-24136fc48228","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.9413235} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0e29dda0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"bbb88812-f83f-4403-8952-bca79fe5efc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049719.942503} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e29dda0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 19ms","method":"GET","requestID":"0e29dda0-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? 200 18ms","method":"GET","requestID":"0e2a2bc0-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Setting up experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully locked booking for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to update booking for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully updated booking for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully set up experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e343de0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e348c00-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully running experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e34da20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701844,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e343de0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e343de0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.995628,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e348c00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0e348c00-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.936006,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2b482769-d43f-4d4f-86a8-5baa69ecfd08","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0102184} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e34da20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","rebac_allow":false,"scope_allow":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":"0e34da20-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"01b7b1c5-941b-4f58-ac96-dd0796d254ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0131977} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e34da20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"0e343de0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"2aa6d195-910d-4c49-831e-c0ef776ce403","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0175319} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling 200 16ms","method":"POST","requestID":"0e34da20-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e348c00-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e37e760-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e343de0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 29ms","method":"GET","requestID":"0e343de0-793f-11ef-9733-5750b05365a5","responseTime":29,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e348c00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? 200 28ms","method":"GET","requestID":"0e348c00-793f-11ef-9733-5750b05365a5","responseTime":28,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"797cba1f-26e9-47ae-8a17-405afc88a493","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0280776} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.626609,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e37e760-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","rebac_allow":false,"scope_allow":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":"0e37e760-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e391fe0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bb06587-88dc-46c2-9de5-12da49284854#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bb06587-88dc-46c2-9de5-12da49284854","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"1c0ba70c-9378-4c09-8d21-295b7e96ab36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.028911} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f8a6440-2ac2-4c49-a121-f3e5abb09ff2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0291877} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"aec66e731e61100ce818dadc845a18c5","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e37e760-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling 200 13ms","method":"POST","requestID":"0e37e760-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"286e309c-7f72-49ae-ab3e-d821580d3487","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0378733} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.105435,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e391fe0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","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/0bb06587-88dc-46c2-9de5-12da49284854","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"aec66e731e61100ce818dadc845a18c5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e391fe0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aec66e731e61100ce818dadc845a18c5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"aec66e731e61100ce818dadc845a18c5","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e391fe0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling 200 12ms","method":"POST","requestID":"0e391fe0-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e3b42c0-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"5c74650be75afe97b1de2acfce68c173"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5c74650be75afe97b1de2acfce68c173","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c74650be75afe97b1de2acfce68c173"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729579,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5c74650be75afe97b1de2acfce68c173","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c74650be75afe97b1de2acfce68c173","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ead0d1d0-085b-4c60-b978-ced969b14aa4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0503612} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.508832,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e3b42c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","rebac_allow":false,"scope_allow":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":"0e3b42c0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e3b42c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling 200 10ms","method":"POST","requestID":"0e3b42c0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"22ec143a-2f42-47cc-93ca-6fa48cbe8a50","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0544264} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c74650be75afe97b1de2acfce68c173","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c74650be75afe97b1de2acfce68c173"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c74650be75afe97b1de2acfce68c173"} device-1 | {"level":"info","message":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 13ms","method":"GET","requestID":"5c74650be75afe97b1de2acfce68c173","responseTime":13,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610266,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.626792428Z"}]},"request_id":"26038ef9-1ad4-4a7d-84ca-bfe0749a2e97","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.064468} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"c3eea9b4-8eca-411f-80a2-d4945d4e7921","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0654573} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} device-1 | {"level":"info","message":"GET /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0? 200 11ms","method":"GET","requestID":"0e3d3e90-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? 200 14ms","method":"GET","requestID":"0e3d3e91-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:01:57.674553603Z"}]},"request_id":"e339f4ef-5b59-4982-8cc0-1bcab7eab00e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0716257} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Building connection plan","requestID":"aec66e731e61100ce818dadc845a18c5"} 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":"e2fbd54f-8ede-44b0-9fe7-bd310916cc03"},{"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":"64751091-258b-4a9f-8438-e7617118067f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2622d5d6-07cf-42bc-b2cc-b8b193d54673"}]},"level":"info","message":"Built pairwise service configurations","requestID":"aec66e731e61100ce818dadc845a18c5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0e3faf90-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0e3faf90-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0e3faf90-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c?id=a7804365-6b18-4925-8998-9288193e188d","ws://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c?id=54740b0d-57ae-4f9b-93da-9876306da809"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"aec66e731e61100ce818dadc845a18c5"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc"} device-1 | {"level":"info","message":"GET /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e? 200 11ms","method":"GET","requestID":"746aca1ca6cad8f3ba2e102a23bc8ecc","responseTime":11,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.723574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e4024c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049719,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcxOX0.eV-xsABYfn6_w6sjZoc-Ethn7YjcxC9GV3KoQuffQc0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"06ec13c8-0f90-4f24-9097-832856a05192","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0880146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fec80e1e-1b59-4445-a818-065c34add748","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.0890968} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5'","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5'","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0e4024c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0e45a300-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\"","requestID":"0e45a300-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0e45a300-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"087ef05666ef43bf9f8f0cdcdf7bcb80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0e45ca10-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"087ef05666ef43bf9f8f0cdcdf7bcb80","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a7804365-6b18-4925-8998-9288193e188d\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\"","requestID":"0e45ca10-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0e45ca10-793f-11ef-a51e-0dff660adfff"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"}}},"level":"info","message":"received a callback","requestID":"087ef05666ef43bf9f8f0cdcdf7bcb80"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"087ef05666ef43bf9f8f0cdcdf7bcb80","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +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":"087ef05666ef43bf9f8f0cdcdf7bcb80"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"aec66e731e61100ce818dadc845a18c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e4a36e0-793f-11ef-9733-5750b05365a5"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.08184,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67c4bc1d-b763-437f-85e8-7787a8a56ccb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.1476688} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e4a36e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","rebac_allow":false,"scope_allow":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":"0e4a36e0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e4a36e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling 200 14ms","method":"POST","requestID":"0e4a36e0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4cef76a0dc9a4bbe224f0557cdb6bc9c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4cef76a0dc9a4bbe224f0557cdb6bc9c","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e4d1d10-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"}}},"level":"info","message":"received a callback","requestID":"4cef76a0dc9a4bbe224f0557cdb6bc9c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0e4e0770-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.34583,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db307712-142f-45b5-b5e4-12c9aa64e4ec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.1665542} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e4d1d10-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","rebac_allow":false,"scope_allow":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":"0e4d1d10-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e4d1d10-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling 200 13ms","method":"POST","requestID":"0e4d1d10-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0bb8363-ba3f-4cef-99c3-7dbee4894bc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a9180ec-282b-467e-aebd-3144460cf51d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.1746469} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.05588,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e4e0770-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e4e0770-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0e4e0770-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5 200 11ms","method":"GET","requestID":"0e4e0770-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"4cef76a0dc9a4bbe224f0557cdb6bc9c","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"4cef76a0dc9a4bbe224f0557cdb6bc9c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e5189e0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4356417-9111-49f9-80ed-0bf180f6e8d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.1945481} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.169252,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e5189e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e5189e0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e5189e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling 200 8ms","method":"POST","requestID":"0e5189e0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e52e970-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cddae76-e7f0-4c34-8e66-28de12b6d6af","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.204188} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.732416,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e52e970-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e52e970-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e52e970-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling 200 8ms","method":"POST","requestID":"0e52e970-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"8f9bcfd385e8394bbffe9517d177f6f4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8f9bcfd385e8394bbffe9517d177f6f4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0bb06587-88dc-46c2-9de5-12da49284854","requestID":"8f9bcfd385e8394bbffe9517d177f6f4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.723176,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8f9bcfd385e8394bbffe9517d177f6f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8f9bcfd385e8394bbffe9517d177f6f4","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0bb06587-88dc-46c2-9de5-12da49284854","requestID":"8f9bcfd385e8394bbffe9517d177f6f4"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0bb06587-88dc-46c2-9de5-12da49284854 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f9bcfd385e8394bbffe9517d177f6f4"} experiment-1 | {"level":"info","message":"GET /experiments/0bb06587-88dc-46c2-9de5-12da49284854 200 9ms","method":"GET","requestID":"8f9bcfd385e8394bbffe9517d177f6f4","responseTime":9,"status":200,"url":"/experiments/0bb06587-88dc-46c2-9de5-12da49284854"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7793f9721e05fcf1b3dee0e84c66629a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0bb06587-88dc-46c2-9de5-12da49284854","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.672955,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7793f9721e05fcf1b3dee0e84c66629a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7793f9721e05fcf1b3dee0e84c66629a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Attempting to finish experiment","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0e59c740-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.692318,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e59c740-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e59c740-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c?id=54740b0d-57ae-4f9b-93da-9876306da809 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.142","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"107652a6878c7f446c53b49c0b788548"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"54740b0d-57ae-4f9b-93da-9876306da809\" from room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c?id=a7804365-6b18-4925-8998-9288193e188d HTTP/1.1","status": "101","body_bytes_sent":"2","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":"8f563a922d60dc27599feabf65d56766"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a7804365-6b18-4925-8998-9288193e188d\" in room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a7804365-6b18-4925-8998-9288193e188d\" from room \"http://localhost/rooms/6ada3a8e-d75b-499d-a4c2-16f86802ee4c\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","device":"67abcee7-1ebf-4b95-bab0-1462e406eed0","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/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c758f55afd0833d578e679a8598570e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6c758f55afd0833d578e679a8598570e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b425c5e8c8b9bdfeead5c5e929cb4110","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b425c5e8c8b9bdfeead5c5e929cb4110","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"}}},"level":"info","message":"received a callback","requestID":"6c758f55afd0833d578e679a8598570e"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"}}},"level":"info","message":"received a callback","requestID":"b425c5e8c8b9bdfeead5c5e929cb4110"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0bb8363-ba3f-4cef-99c3-7dbee4894bc5': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0bb8363-ba3f-4cef-99c3-7dbee4894bc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"7382c383-dccd-467c-8a1c-5c9580618548","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.2608643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56de0cf9-e744-4108-b289-d27d3bc60309","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.2611027} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"0e59c740-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d0bb8363-ba3f-4cef-99c3-7dbee4894bc5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0e59c740-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5 204 33ms","method":"DELETE","requestID":"0e59c740-793f-11ef-9733-5750b05365a5","responseTime":33,"status":204,"url":"/peerconnections/d0bb8363-ba3f-4cef-99c3-7dbee4894bc5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bb06587-88dc-46c2-9de5-12da49284854"},"level":"info","message":"Successfully finished experiment","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e60f330-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67abcee7-1ebf-4b95-bab0-1462e406eed0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d5e52e7-d86a-47bb-ab1a-63d602ef9170","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.2954257} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.151934,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e60f330-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e60f330-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e60f330-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling 200 8ms","method":"POST","requestID":"0e60f330-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e6279d0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bb06587-88dc-46c2-9de5-12da49284854': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bb06587-88dc-46c2-9de5-12da49284854","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"3826b871-bf86-4479-be24-f443d642029f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.3025064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19fe3ea2-8564-44d2-a3cb-5c63cec27ad0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.3027236} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"7793f9721e05fcf1b3dee0e84c66629a","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fbb7738-bae9-48d2-a359-d9dfaeefe40e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51fdbb57-8a9a-4953-a491-62d44bac6057","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.3050363} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.284148,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0e6279d0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e6279d0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e6279d0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling 200 8ms","method":"POST","requestID":"0e6279d0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0bb06587-88dc-46c2-9de5-12da49284854","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0bb06587-88dc-46c2-9de5-12da49284854 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7793f9721e05fcf1b3dee0e84c66629a"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"2.154","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"76a77c7c417c7bc7ed06a82dd11d9edd"} experiment-1 | {"level":"info","message":"DELETE /experiments/0bb06587-88dc-46c2-9de5-12da49284854 204 131ms","method":"DELETE","requestID":"7793f9721e05fcf1b3dee0e84c66629a","responseTime":131,"status":204,"url":"/experiments/0bb06587-88dc-46c2-9de5-12da49284854"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"6c758f55afd0833d578e679a8598570e","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c758f55afd0833d578e679a8598570e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"b425c5e8c8b9bdfeead5c5e929cb4110","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"b425c5e8c8b9bdfeead5c5e929cb4110"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"755d05fcde6086722aec56dac3ad6145"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"755d05fcde6086722aec56dac3ad6145"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.635","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f6b7d7e71e45507c29158ac16c14a0df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.00157,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"755d05fcde6086722aec56dac3ad6145","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9fbb7738-bae9-48d2-a359-d9dfaeefe40e' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1ac8f474-2acd-479a-83ac-4a6185fd2c90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.3907032} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/67abcee7-1ebf-4b95-bab0-1462e406eed0' 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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42261d86-e16c-4bb3-b3b3-132fcca6cf2d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.3955173} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"8ad16285-653c-43bd-96fd-1810cd2b7bba","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4043126} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a03f578b-24fc-4bc5-af35-bd4b02de7fae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4044611} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"2c783063-6198-43a5-b521-e7aa80390eb4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.408802} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"755d05fcde6086722aec56dac3ad6145"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"755d05fcde6086722aec56dac3ad6145","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"755d05fcde6086722aec56dac3ad6145"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"222f76ac9c3b81f6cc8950359a9905e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"222f76ac9c3b81f6cc8950359a9905e8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.679369,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"222f76ac9c3b81f6cc8950359a9905e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9eabe4ae-e8bc-4831-bbe1-524ae59c79cd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4360187} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd650e2f-2ccf-403c-b20d-99c7041c4bc7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4400804} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"5a1420db-2510-45df-9815-61e34ece958d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4507139} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f6b9292-ec2c-4764-b24f-918c365d1128","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.450845} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"8bfdc2ab-cf41-4c98-a233-3e0352c0a5b0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.4548397} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"222f76ac9c3b81f6cc8950359a9905e8"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"222f76ac9c3b81f6cc8950359a9905e8"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"222f76ac9c3b81f6cc8950359a9905e8","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"91afe1a59c39679530f2c53f278191ba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91afe1a59c39679530f2c53f278191ba","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"91afe1a59c39679530f2c53f278191ba"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.072305,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"91afe1a59c39679530f2c53f278191ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"91afe1a59c39679530f2c53f278191ba","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"4060f21b-d367-4d57-899f-877b050d3ed5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.9399934} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"91afe1a59c39679530f2c53f278191ba","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"934ab75d-40f2-42da-88f2-fa4dd9189787","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.9444966} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"91afe1a59c39679530f2c53f278191ba","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"3db2d430-4f3c-49c7-b35b-9c16b51630f3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049720.9551795} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"91afe1a59c39679530f2c53f278191ba","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"91afe1a59c39679530f2c53f278191ba"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"91afe1a59c39679530f2c53f278191ba"} device-1 | {"level":"info","message":"PATCH /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a 200 26ms","method":"PATCH","requestID":"91afe1a59c39679530f2c53f278191ba","responseTime":26,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg","level":"info","message":"auth send jwt","requestID":"c35ca5db4e11796c1ee372950e9af775"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c35ca5db4e11796c1ee372950e9af775","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c35ca5db4e11796c1ee372950e9af775"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102247,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c35ca5db4e11796c1ee372950e9af775","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049720,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMH0.KJHXWjrMYi3KPPAqqMOU2INpAJ6oJI8-rvaPXwrkslg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c35ca5db4e11796c1ee372950e9af775","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c35ca5db4e11796c1ee372950e9af775"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/websocket 200 19ms","method":"POST","requestID":"c35ca5db4e11796c1ee372950e9af775","responseTime":19,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c35ca5db4e11796c1ee372950e9af775"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6ecfe1f048f9786dab96a7292bbe13b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b6ecfe1f048f9786dab96a7292bbe13b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/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":"b6ecfe1f048f9786dab96a7292bbe13b"} device-1 | {"level":"info","message":"OPTIONS /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/websocket 200 1ms","method":"OPTIONS","requestID":"b6ecfe1f048f9786dab96a7292bbe13b","responseTime":1,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"0bb75dee01033a3198417e5e971697bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0bb75dee01033a3198417e5e971697bc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0bb75dee01033a3198417e5e971697bc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230473,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0bb75dee01033a3198417e5e971697bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0bb75dee01033a3198417e5e971697bc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0bb75dee01033a3198417e5e971697bc"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/websocket 200 21ms","method":"POST","requestID":"0bb75dee01033a3198417e5e971697bc","responseTime":21,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0bb75dee01033a3198417e5e971697bc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"576e267ddfc64b3791c910016344cf59","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"576e267ddfc64b3791c910016344cf59","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 1ms","method":"OPTIONS","requestID":"576e267ddfc64b3791c910016344cf59","responseTime":1,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"576e267ddfc64b3791c910016344cf59"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"67875154214ed64b5b5be60a859551a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67875154214ed64b5b5be60a859551a2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"67875154214ed64b5b5be60a859551a2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138677,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"67875154214ed64b5b5be60a859551a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"67875154214ed64b5b5be60a859551a2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"0a6626ae-c611-477d-a7ae-7e0d9e801ee6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.5506022} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67875154214ed64b5b5be60a859551a2","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07370fda-9b2e-4022-b89b-4c2ce3bc98e1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.5572257} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"67875154214ed64b5b5be60a859551a2","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"2dffe8db-a51f-4126-96cb-1146483a9ab3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.570048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67875154214ed64b5b5be60a859551a2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"67875154214ed64b5b5be60a859551a2"} device-1 | {"level":"info","message":"PATCH /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 36ms","method":"PATCH","requestID":"67875154214ed64b5b5be60a859551a2","responseTime":36,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","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":"67875154214ed64b5b5be60a859551a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"7be444b43782ef9dcb57ffb7ca93b3f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"f1f9759b-3e5f-4bc5-b6fa-f09ac03a725c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.5972188} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1"} device-1 | {"level":"info","message":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? 200 16ms","method":"GET","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1","responseTime":16,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7be444b43782ef9dcb57ffb7ca93b3f1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"2ec4360f6023755444457527ad55db07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2ec4360f6023755444457527ad55db07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ec4360f6023755444457527ad55db07"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795995,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2ec4360f6023755444457527ad55db07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ec4360f6023755444457527ad55db07","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"57a9d5e9-dd0a-4dd1-819a-4db58f16a100","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.6204345} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ec4360f6023755444457527ad55db07","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ec4360f6023755444457527ad55db07"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ec4360f6023755444457527ad55db07"} device-1 | {"level":"info","message":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 15ms","method":"GET","requestID":"2ec4360f6023755444457527ad55db07","responseTime":15,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"61d9b71bd84232c9261ea44b76e796df"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"61d9b71bd84232c9261ea44b76e796df","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"61d9b71bd84232c9261ea44b76e796df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.480639,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"61d9b71bd84232c9261ea44b76e796df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61d9b71bd84232c9261ea44b76e796df","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to run experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to book experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully booked experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fcda290-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.674234,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fcda290-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0fcda290-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"26e3ccda-2cc0-40cd-a1f1-b852eeabab70","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.6885757} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"135e1cf2-6844-4dc4-8577-365ac8aebc4c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.6891313} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0fcda290-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? 200 15ms","method":"GET","requestID":"0fcd7b80-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fcda290-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 15ms","method":"GET","requestID":"0fcda290-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Setting up experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully set up experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fd850f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fd87800-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fd8c620-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully running experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.895465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805783,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fd850f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0fd850f0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fd87800-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0fd87800-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.645985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d128a491-eceb-4331-adba-ac9341804259","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.75964} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fd8c620-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","rebac_allow":false,"scope_allow":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":"0fd8c620-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"6605d1aa-180a-4335-8f4b-8edb0bb4b40d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.7636774} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fd8c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling 200 12ms","method":"POST","requestID":"0fd8c620-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fd850f0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"6d2c5f9b-5a45-402e-b54a-3d23012e0cd4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.7661777} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fd87800-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fdae900-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fd850f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? 200 21ms","method":"GET","requestID":"0fd850f0-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fd87800-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b3011b5-4186-41d9-be72-a64b8b095212","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.7733686} device-1 | {"level":"info","message":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 22ms","method":"GET","requestID":"0fd87800-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.538876,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fdae900-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","rebac_allow":false,"scope_allow":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":"0fdae900-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fdc2180-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fdae900-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling 200 11ms","method":"POST","requestID":"0fdae900-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9421a092-c849-48ac-ac4f-3aa7cc5858f6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.781294} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F75609f1f-6bac-44eb-938a-e8fe95588d5f#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F75609f1f-6bac-44eb-938a-e8fe95588d5f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7c059b67-2b05-49da-97d8-dcecb57a4314","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.7821465} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.57595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fdc2180-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","rebac_allow":false,"scope_allow":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":"0fdc2180-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bae68c0-923e-43a7-94ec-2e0ab62d8a90","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.782849} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"61d9b71bd84232c9261ea44b76e796df","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fdc2180-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling 200 12ms","method":"POST","requestID":"0fdc2180-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fde6b70-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"61d9b71bd84232c9261ea44b76e796df"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"61d9b71bd84232c9261ea44b76e796df","responseTime":161,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61d9b71bd84232c9261ea44b76e796df"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9b7eeeb-2a6f-41be-b58a-1176d928df61","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.7957568} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.911758,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fde6b70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fde6b70-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"427d26313d2895aa0c93c15f2c9f7ae6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"427d26313d2895aa0c93c15f2c9f7ae6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fde6b70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling 200 10ms","method":"POST","requestID":"0fde6b70-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"427d26313d2895aa0c93c15f2c9f7ae6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe01920-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fe06740-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005447,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"427d26313d2895aa0c93c15f2c9f7ae6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"427d26313d2895aa0c93c15f2c9f7ae6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.856312,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fe01920-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fe01920-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.834729,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fe06740-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fe06740-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"30f48b27-ddff-4d07-9bf0-b8cd2193e3ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8109875} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"427d26313d2895aa0c93c15f2c9f7ae6","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.404268887Z"}]},"request_id":"68bef3ec-158e-44fa-b6e7-813b0c1af34e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8131158} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"427d26313d2895aa0c93c15f2c9f7ae6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fe01920-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"b1408b97-49ae-4a4d-a5c2-cc3b245e68be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8150475} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"427d26313d2895aa0c93c15f2c9f7ae6"} device-1 | {"level":"info","message":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? 200 15ms","method":"GET","requestID":"427d26313d2895aa0c93c15f2c9f7ae6","responseTime":15,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fe06740-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe01920-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"0137fa32f5cda13b310c84def65ec1a3"} device-1 | {"level":"info","message":"GET /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a? 200 18ms","method":"GET","requestID":"0fe01920-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a?"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0137fa32f5cda13b310c84def65ec1a3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fe06740-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 17ms","method":"GET","requestID":"0fe06740-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0137fa32f5cda13b310c84def65ec1a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Building connection plan","requestID":"61d9b71bd84232c9261ea44b76e796df"} 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":"4f76f401-6397-459e-8700-9ba36ac8af2c"},{"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":"7e35301e-6030-457e-8601-e16d1e194d82"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"638fc755-0ecb-4c65-b5ac-4fc6dc201110"}]},"level":"info","message":"Built pairwise service configurations","requestID":"61d9b71bd84232c9261ea44b76e796df"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0fe34d70-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0fe34d70-793f-11ef-a51e-0dff660adfff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0fe34d70-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916023,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa?id=ab0ca15e-ad00-4d1e-adf7-c6457125e9b7","ws://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa?id=2a07cb1f-a698-45b3-b3c6-f6880f7a981f"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"61d9b71bd84232c9261ea44b76e796df"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0137fa32f5cda13b310c84def65ec1a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0137fa32f5cda13b310c84def65ec1a3","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.155988,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:00.450680914Z"}]},"request_id":"97779100-2e6e-437a-994b-855627e10dad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8320248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0137fa32f5cda13b310c84def65ec1a3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0137fa32f5cda13b310c84def65ec1a3"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0137fa32f5cda13b310c84def65ec1a3"} device-1 | {"level":"info","message":"GET /devices/aea0c6fd-a693-446b-86ec-762581ca52cb? 200 14ms","method":"GET","requestID":"0137fa32f5cda13b310c84def65ec1a3","responseTime":14,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"a8ae9975-1ffc-40ee-9d83-48b7b548d3e8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8421931} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9a38498-a668-4ea4-813c-87133239423f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8423247} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa'","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa'","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0fe3e9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0fe9dd20-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2a07cb1f-a698-45b3-b3c6-f6880f7a981f\" in room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\"","requestID":"0fe9dd20-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0fe9dd20-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f16c403f7c31484488b64ca2ec25c8ad","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f16c403f7c31484488b64ca2ec25c8ad","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0fea2b40-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ab0ca15e-ad00-4d1e-adf7-c6457125e9b7\" in room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\"","requestID":"0fea2b40-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0fea2b40-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ab0ca15e-ad00-4d1e-adf7-c6457125e9b7\" in room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\"","requestID":"0fea2b40-793f-11ef-a51e-0dff660adfff"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"}}},"level":"info","message":"received a callback","requestID":"f16c403f7c31484488b64ca2ec25c8ad"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f16c403f7c31484488b64ca2ec25c8ad","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"f16c403f7c31484488b64ca2ec25c8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"61d9b71bd84232c9261ea44b76e796df"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0fedd4c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"814a6940-027e-40c3-9005-2f5a6882b15b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.8966823} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.968151,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0fedd4c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fedd4c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0fedd4c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling 200 13ms","method":"POST","requestID":"0fedd4c0-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a13d18f36c8679c7ee0b5160b89a7d6e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a13d18f36c8679c7ee0b5160b89a7d6e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ff01eb0-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"}}},"level":"info","message":"received a callback","requestID":"a13d18f36c8679c7ee0b5160b89a7d6e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0335210a-0aec-4bc3-a9c8-f2624414661e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.9115193} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.385838,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0ff0e200-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ff01eb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff01eb0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7b185e4-c53e-4c9e-bfc4-6475e3625cfa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31498eb1-b373-492b-b3fe-6cc03d5cfc37","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.9164522} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ff01eb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.099689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling 200 10ms","method":"POST","requestID":"0ff01eb0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ff0e200-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff0e200-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0ff0e200-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa 200 8ms","method":"GET","requestID":"0ff0e200-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"a13d18f36c8679c7ee0b5160b89a7d6e","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"a13d18f36c8679c7ee0b5160b89a7d6e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ff46470-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c69566e6-2e55-489f-996e-ae3aac0cbf20","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.9396305} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.71494,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ff46470-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff46470-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ff46470-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling 200 8ms","method":"POST","requestID":"0ff46470-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ff5c400-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df70b294-b46d-4f0a-80af-82408d23fcd8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049722.94956} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.315166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ff5c400-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ff5c400-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ff5c400-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling 200 9ms","method":"POST","requestID":"0ff5c400-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"6ab3a35d8f83e572b061a8d52b493140"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ab3a35d8f83e572b061a8d52b493140","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","requestID":"6ab3a35d8f83e572b061a8d52b493140"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.723348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6ab3a35d8f83e572b061a8d52b493140","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ab3a35d8f83e572b061a8d52b493140","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","requestID":"6ab3a35d8f83e572b061a8d52b493140"} gateway-1 | {"time_local":"23/Sep/2024:00:02:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ab3a35d8f83e572b061a8d52b493140"} experiment-1 | {"level":"info","message":"GET /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f 200 10ms","method":"GET","requestID":"6ab3a35d8f83e572b061a8d52b493140","responseTime":10,"status":200,"url":"/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg","level":"info","message":"auth send jwt","requestID":"546a71d74ee7d9f801c4d1a80f745416"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"546a71d74ee7d9f801c4d1a80f745416","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","requestID":"546a71d74ee7d9f801c4d1a80f745416"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.051933,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"546a71d74ee7d9f801c4d1a80f745416","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"546a71d74ee7d9f801c4d1a80f745416","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Attempting to finish experiment","requestID":"546a71d74ee7d9f801c4d1a80f745416"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.687618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049722,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyMn0.r51U-rw8jlLDpykX2rHmlUd4pVtmI1Jpw1cuFmfp3kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa?id=2a07cb1f-a698-45b3-b3c6-f6880f7a981f HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f0432bca6413ae32cbf72d4ce070e195"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2a07cb1f-a698-45b3-b3c6-f6880f7a981f\" in room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2a07cb1f-a698-45b3-b3c6-f6880f7a981f\" from room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa?id=ab0ca15e-ad00-4d1e-adf7-c6457125e9b7 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.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":"60b7df74954788656a0ec791b6515367"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ab0ca15e-ad00-4d1e-adf7-c6457125e9b7\" in room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ab0ca15e-ad00-4d1e-adf7-c6457125e9b7\" from room \"http://localhost/rooms/f6b18f8d-8d4c-4634-8ae5-0aab22119efa\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","device":"aea0c6fd-a693-446b-86ec-762581ca52cb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7319fd96273bf94a0496d3bbfdcae633","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7319fd96273bf94a0496d3bbfdcae633","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7b185e4-c53e-4c9e-bfc4-6475e3625cfa': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7b185e4-c53e-4c9e-bfc4-6475e3625cfa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"2e67a186-b11f-4c34-9a5b-955ccc07fb63","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0228195} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a8226833fd6f288d3feb225c64799f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28de75d6-71db-40c3-aac1-da8cbe542061","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0231175} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"}}},"level":"info","message":"received a callback","requestID":"7319fd96273bf94a0496d3bbfdcae633"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a8226833fd6f288d3feb225c64799f5","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"}}},"level":"info","message":"received a callback","requestID":"3a8226833fd6f288d3feb225c64799f5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d7b185e4-c53e-4c9e-bfc4-6475e3625cfa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa 204 39ms","method":"DELETE","requestID":"0ffec4b0-793f-11ef-9733-5750b05365a5","responseTime":39,"status":204,"url":"/peerconnections/d7b185e4-c53e-4c9e-bfc4-6475e3625cfa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"},"level":"info","message":"Successfully finished experiment","requestID":"546a71d74ee7d9f801c4d1a80f745416"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1007ec70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faea0c6fd-a693-446b-86ec-762581ca52cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05cf56ec-b32e-4015-8fa6-be6a8ee93634","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0694191} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.291949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1007ec70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb","object_type":"device","rebac_allow":false,"scope_allow":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":"1007ec70-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1007ec70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling 200 12ms","method":"POST","requestID":"1007ec70-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/aea0c6fd-a693-446b-86ec-762581ca52cb/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F75609f1f-6bac-44eb-938a-e8fe95588d5f': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F75609f1f-6bac-44eb-938a-e8fe95588d5f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"f8ca38e7-0713-4110-94ae-fda44c86a333","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0761573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99203dd6-7493-4a19-be14-1437278c9148","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0764525} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"100a5d70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"546a71d74ee7d9f801c4d1a80f745416","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eefb456e-fa31-4b23-a291-b9d45fce2cf5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.0845158} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.31553,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"100a5d70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a","object_type":"device","rebac_allow":false,"scope_allow":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":"100a5d70-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"100a5d70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling 200 11ms","method":"POST","requestID":"100a5d70-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f","requestID":"546a71d74ee7d9f801c4d1a80f745416"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"546a71d74ee7d9f801c4d1a80f745416"} experiment-1 | {"level":"info","message":"DELETE /experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f 204 155ms","method":"DELETE","requestID":"546a71d74ee7d9f801c4d1a80f745416","responseTime":155,"status":204,"url":"/experiments/75609f1f-6bac-44eb-938a-e8fe95588d5f"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"2.165","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"99d261a270a93ab83c2f6bd4a5e1e2e5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"7319fd96273bf94a0496d3bbfdcae633","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"7319fd96273bf94a0496d3bbfdcae633"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"3a8226833fd6f288d3feb225c64799f5","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a8226833fd6f288d3feb225c64799f5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw","level":"info","message":"auth send jwt","requestID":"b6ca35ef94be39848b3736482d9aef37"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b6ca35ef94be39848b3736482d9aef37","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b6ca35ef94be39848b3736482d9aef37"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.665","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":"8b82d7c23134736fcd4f3343d12fb8d7"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4cbd0920-a38d-4c5f-9db8-2e5dff3fb12a' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.018271,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b6ca35ef94be39848b3736482d9aef37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049723,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/aea0c6fd-a693-446b-86ec-762581ca52cb' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"83251798-e2a1-4a53-a2e4-b73adcc78ab8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.179408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47648285-ba43-4922-b82d-f065bfb25a59","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.1842184} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"9cd41eb3-dc58-431b-960e-9a3a63fc1287","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.1990683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e63ab01-a3e9-46b3-a59d-64451b804c6e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.1993606} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"ed833993-88f4-4458-8f31-acbd81fd29e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.2031484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b6ca35ef94be39848b3736482d9aef37"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"b6ca35ef94be39848b3736482d9aef37","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6ca35ef94be39848b3736482d9aef37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw","level":"info","message":"auth send jwt","requestID":"2672e5e20d61494771eae5b049aff84b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2672e5e20d61494771eae5b049aff84b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.86181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2672e5e20d61494771eae5b049aff84b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049723,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"838efaeb-3407-44ed-86e9-038328dcb0a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.2267916} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c01285e6-6635-4cd7-a2bf-95fd98fe20aa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.2307053} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"acd964bf-384a-4059-8210-99b281f8105c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.2409897} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adfb528e-001c-4cc1-b692-9d2268777307","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.241148} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"0900a85e-f4c4-4f53-accc-3b622ffda8d8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.2448838} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2672e5e20d61494771eae5b049aff84b"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2672e5e20d61494771eae5b049aff84b"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"2672e5e20d61494771eae5b049aff84b","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw","level":"info","message":"auth send jwt","requestID":"e888217931607df04638c7e6714d5a31"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e888217931607df04638c7e6714d5a31","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e888217931607df04638c7e6714d5a31"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e888217931607df04638c7e6714d5a31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049723,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e888217931607df04638c7e6714d5a31","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"27805eb1-6912-4cbc-8428-208b921defe7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.7305584} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e888217931607df04638c7e6714d5a31","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f50752c-22f2-43c0-91e6-ad67c27fdf42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.7371228} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e888217931607df04638c7e6714d5a31","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"9bcf086a-7869-422d-b246-1029e70f6e50","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049723.7513487} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e888217931607df04638c7e6714d5a31","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e888217931607df04638c7e6714d5a31"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c52085c0-476b-4780-ba01-9d4d586a5dee HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e888217931607df04638c7e6714d5a31"} device-1 | {"level":"info","message":"PATCH /devices/c52085c0-476b-4780-ba01-9d4d586a5dee 200 36ms","method":"PATCH","requestID":"e888217931607df04638c7e6714d5a31","responseTime":36,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw","level":"info","message":"auth send jwt","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170882,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"5bab5a3cadf8a50d0d2848f399b35ea3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049723,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyM30.qqufAz9RgGX0eU26NxEiaUO_OhVHgZchzrkvOoWm1gw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3"} gateway-1 | {"time_local":"23/Sep/2024:00:02:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3"} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/websocket 200 20ms","method":"POST","requestID":"5bab5a3cadf8a50d0d2848f399b35ea3","responseTime":20,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4fdfcb3e5047c22f6ea6bb6dd21b9707","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4fdfcb3e5047c22f6ea6bb6dd21b9707","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/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":"4fdfcb3e5047c22f6ea6bb6dd21b9707"} device-1 | {"level":"info","message":"OPTIONS /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/websocket 200 1ms","method":"OPTIONS","requestID":"4fdfcb3e5047c22f6ea6bb6dd21b9707","responseTime":1,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"8dcf1d9de497c59d5cb9b524a27533c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8dcf1d9de497c59d5cb9b524a27533c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8dcf1d9de497c59d5cb9b524a27533c8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8dcf1d9de497c59d5cb9b524a27533c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8dcf1d9de497c59d5cb9b524a27533c8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8dcf1d9de497c59d5cb9b524a27533c8"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/websocket 200 21ms","method":"POST","requestID":"8dcf1d9de497c59d5cb9b524a27533c8","responseTime":21,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8dcf1d9de497c59d5cb9b524a27533c8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"126b8e7476fd9675c041185e5d9313ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"126b8e7476fd9675c041185e5d9313ae","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"126b8e7476fd9675c041185e5d9313ae"} device-1 | {"level":"info","message":"OPTIONS /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 1ms","method":"OPTIONS","requestID":"126b8e7476fd9675c041185e5d9313ae","responseTime":1,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"6f86a21f083e018e105b7ee6cf02051c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6f86a21f083e018e105b7ee6cf02051c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6f86a21f083e018e105b7ee6cf02051c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209417,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6f86a21f083e018e105b7ee6cf02051c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f86a21f083e018e105b7ee6cf02051c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"461322ad-da46-4aa2-a2cd-ae94f452a418","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.3766267} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f86a21f083e018e105b7ee6cf02051c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d1a4ce2-6aa3-4fe6-94d8-a2a5e3798655","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.3840926} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f86a21f083e018e105b7ee6cf02051c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"604d5926-5abf-4280-883d-bb9137ea4672","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.3996634} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6f86a21f083e018e105b7ee6cf02051c","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6f86a21f083e018e105b7ee6cf02051c"} device-1 | {"level":"info","message":"PATCH /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 42ms","method":"PATCH","requestID":"6f86a21f083e018e105b7ee6cf02051c","responseTime":42,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","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":"6f86a21f083e018e105b7ee6cf02051c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"40378af4ad0b843d875036221ceb1711"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"40378af4ad0b843d875036221ceb1711","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40378af4ad0b843d875036221ceb1711"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"40378af4ad0b843d875036221ceb1711","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40378af4ad0b843d875036221ceb1711","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"7e19617e-8b5f-47f7-8193-9b15ed265564","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.4311838} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40378af4ad0b843d875036221ceb1711","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40378af4ad0b843d875036221ceb1711"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40378af4ad0b843d875036221ceb1711"} device-1 | {"level":"info","message":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? 200 16ms","method":"GET","requestID":"40378af4ad0b843d875036221ceb1711","responseTime":16,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"03acd9223affea45246cda6ec00d2cec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03acd9223affea45246cda6ec00d2cec","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03acd9223affea45246cda6ec00d2cec"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03acd9223affea45246cda6ec00d2cec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03acd9223affea45246cda6ec00d2cec","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"14ae645a-8b0e-4610-8970-71884a89e4c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.451705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03acd9223affea45246cda6ec00d2cec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03acd9223affea45246cda6ec00d2cec"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03acd9223affea45246cda6ec00d2cec"} device-1 | {"level":"info","message":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 14ms","method":"GET","requestID":"03acd9223affea45246cda6ec00d2cec","responseTime":14,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"13e2b13158c74b8dadd8a5939d1771f9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.62107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"13e2b13158c74b8dadd8a5939d1771f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13e2b13158c74b8dadd8a5939d1771f9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to run experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to book experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully booked experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"117cd930-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"117d2750-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"117cd930-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"117cd930-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.153997,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"117d2750-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"117d2750-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"7bacaa96-760d-43b5-afe3-059eb14b4150","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.5208821} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"117cd930-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"d44e9686-6912-4e42-8673-af9fdef64590","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.522189} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"117d2750-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"117cd930-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? 200 22ms","method":"GET","requestID":"117cd930-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"117d2750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 22ms","method":"GET","requestID":"117d2750-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Setting up experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully set up experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11889900-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1188e720-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11890e30-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully running experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233894,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11889900-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11889900-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.045836,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1188e720-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1188e720-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.479206,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c471cb2a-afbc-48a1-9c45-65a7dd53fbf7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.5985332} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11890e30-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","rebac_allow":false,"scope_allow":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":"11890e30-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"968d2e4b-c7b4-4423-9a6b-50d709ba9f8f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6027446} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"11889900-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11890e30-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"4f50f6b9-2501-4856-8ae6-8a45dea69cbc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6066592} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling 200 21ms","method":"POST","requestID":"11890e30-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1188e720-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"118cb7b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11889900-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? 200 31ms","method":"GET","requestID":"11889900-793f-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1188e720-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 31ms","method":"GET","requestID":"1188e720-793f-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e5f0145-b3af-41b1-8b14-ca0290e286eb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.617874} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.91935,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"118df030-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"118cb7b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","rebac_allow":false,"scope_allow":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":"118cb7b0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bdb7062-d1fb-4e45-97bf-183f207cf7bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6189525} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7512b96-573d-4cb9-9b9a-d45c4954a1e6#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7512b96-573d-4cb9-9b9a-d45c4954a1e6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"acd70e6e-91c8-4fb6-993d-aacbb4f1feea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6191046} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"13e2b13158c74b8dadd8a5939d1771f9","responseTime":30,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"118cb7b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling 200 14ms","method":"POST","requestID":"118cb7b0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62828d9f-37f4-4683-bfea-dc4b4f980de4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6276329} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.631041,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"118df030-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"118df030-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"118df030-793f-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 167ms","method":"POST","requestID":"13e2b13158c74b8dadd8a5939d1771f9","responseTime":167,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling 200 13ms","method":"POST","requestID":"118df030-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11903a20-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"8366a0afeb02972df06c26f73e92a7f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8366a0afeb02972df06c26f73e92a7f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8366a0afeb02972df06c26f73e92a7f1"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23fed3d5-0fb9-4c3b-95d8-636c5f3098f4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6387455} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.395435,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11903a20-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","rebac_allow":false,"scope_allow":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":"11903a20-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.775982,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8366a0afeb02972df06c26f73e92a7f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8366a0afeb02972df06c26f73e92a7f1","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11903a20-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling 200 11ms","method":"POST","requestID":"11903a20-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"a5de811f-4687-4825-9984-0a9c0501d378","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6455326} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8366a0afeb02972df06c26f73e92a7f1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11925d00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11928410-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8366a0afeb02972df06c26f73e92a7f1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.602606,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8366a0afeb02972df06c26f73e92a7f1"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? 200 14ms","method":"GET","requestID":"8366a0afeb02972df06c26f73e92a7f1","responseTime":14,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11925d00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11925d00-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11928410-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11928410-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.199036038Z"}]},"request_id":"440c53a0-b6fc-4147-b1f7-3ee34155f710","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6564295} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"50584f5dabeac4c7c808031e79dc99dd"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11925d00-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"50584f5dabeac4c7c808031e79dc99dd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"98a51b76-f4ea-489d-86e0-820805d59fd0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6575813} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"11928410-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50584f5dabeac4c7c808031e79dc99dd"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11928410-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 13ms","method":"GET","requestID":"11928410-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11925d00-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799111,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"GET /devices/c52085c0-476b-4780-ba01-9d4d586a5dee? 200 15ms","method":"GET","requestID":"11925d00-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"50584f5dabeac4c7c808031e79dc99dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Building connection plan","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} 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":"df41ec73-4529-498f-84e3-c4e3324895fa"},{"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":"d1dcf27b-6d72-4853-a3ee-a386ac38aa5f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8d6efe38-a278-4327-bb53-6c711b18860f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50584f5dabeac4c7c808031e79dc99dd","responseTime":3,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"11951c20-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"11951c20-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 0ms","method":"POST","requestID":"11951c20-793f-11ef-a51e-0dff660adfff","responseTime":0,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:03.240956764Z"}]},"request_id":"c72df33c-7489-4fea-ab66-0307b90c165d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6669886} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50584f5dabeac4c7c808031e79dc99dd","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe?id=d4965db1-5f1e-4673-852f-10196154a304","ws://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe?id=b4288250-ef47-45ec-bf53-7aa18a252486"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50584f5dabeac4c7c808031e79dc99dd"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50584f5dabeac4c7c808031e79dc99dd"} device-1 | {"level":"info","message":"GET /devices/6be870f1-5cd0-407b-b37f-e07497deaef4? 200 11ms","method":"GET","requestID":"50584f5dabeac4c7c808031e79dc99dd","responseTime":11,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.782366,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11959150-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11959150-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ab74dba3-5d39-43c8-ba28-bc7d09fb7e47","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6799273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdbaa01d-68d1-4a2c-b786-97a8b4992b9c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.6801627} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"11959150-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99'","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99'","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"11959150-793f-11ef-9733-5750b05365a5","responseTime":23,"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":"11959150-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"119a4c40-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d4965db1-5f1e-4673-852f-10196154a304\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\"","requestID":"119a4c40-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"119a4c40-793f-11ef-a51e-0dff660adfff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ac9ada92450e35916f006b04d6d1068","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9ac9ada92450e35916f006b04d6d1068","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"}}},"level":"info","message":"received a callback","requestID":"9ac9ada92450e35916f006b04d6d1068"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"119ae880-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\"","requestID":"119ae880-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"119ae880-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\"","requestID":"119ae880-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"9ac9ada92450e35916f006b04d6d1068","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +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":"9ac9ada92450e35916f006b04d6d1068"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"13e2b13158c74b8dadd8a5939d1771f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"119da7a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cb7511b-7c90-44a9-9f81-4eb7b8fa3dce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.7271147} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.506981,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"119da7a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"119da7a0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"119da7a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling 200 11ms","method":"POST","requestID":"119da7a0-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"119fa370-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b01d8e2-eed8-4fcc-8c92-4139ec9d3c7c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.739593} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.118254,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"119fa370-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"119fa370-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"119fa370-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling 200 31ms","method":"POST","requestID":"119fa370-793f-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aac09893ed5fe134929be8f8b1669664","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"aac09893ed5fe134929be8f8b1669664","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"}}},"level":"info","message":"received a callback","requestID":"aac09893ed5fe134929be8f8b1669664"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"11a548c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c4679ec-7931-4605-b91a-693cb9ba1c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25aeb54e-9258-46c3-afc5-7d2dd4dc5b88","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.7784445} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.00056,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11a548c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99","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":"11a548c0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"11a548c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99 200 14ms","method":"GET","requestID":"11a548c0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"aac09893ed5fe134929be8f8b1669664","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"aac09893ed5fe134929be8f8b1669664"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11aa2ac0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cdcaf0d-6ddd-4ea3-9e32-71735a77175d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.8103514} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092874,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11aa2ac0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","rebac_allow":false,"scope_allow":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":"11aa2ac0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"ca9176bc85f0916682f728b1c82d50d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ca9176bc85f0916682f728b1c82d50d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11aa2ac0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling 200 11ms","method":"POST","requestID":"11aa2ac0-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","requestID":"ca9176bc85f0916682f728b1c82d50d2"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11ac4da0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.062235,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ca9176bc85f0916682f728b1c82d50d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ca9176bc85f0916682f728b1c82d50d2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c56fc8c7-d5cf-4fbb-bfae-21bac51e8203","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.8234851} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.614335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11ac4da0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11ac4da0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","requestID":"ca9176bc85f0916682f728b1c82d50d2"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca9176bc85f0916682f728b1c82d50d2"} experiment-1 | {"level":"info","message":"GET /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6 200 12ms","method":"GET","requestID":"ca9176bc85f0916682f728b1c82d50d2","responseTime":12,"status":200,"url":"/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11ac4da0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling 200 10ms","method":"POST","requestID":"11ac4da0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"cd300418179fe64f227963c41ccfbe84"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd300418179fe64f227963c41ccfbe84","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","requestID":"cd300418179fe64f227963c41ccfbe84"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.099993,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"cd300418179fe64f227963c41ccfbe84","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd300418179fe64f227963c41ccfbe84","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Attempting to finish experiment","requestID":"cd300418179fe64f227963c41ccfbe84"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"11b06c50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.870637,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11b06c50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"11b06c50-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe?id=d4965db1-5f1e-4673-852f-10196154a304 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e326a4239dac58cfc3cb13874b97f770"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d4965db1-5f1e-4673-852f-10196154a304\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d4965db1-5f1e-4673-852f-10196154a304\" from room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99","device":"6be870f1-5cd0-407b-b37f-e07497deaef4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe?id=b4288250-ef47-45ec-bf53-7aa18a252486 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.156","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":"3468578cad44b5071892eb8167300a01"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" in room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b4288250-ef47-45ec-bf53-7aa18a252486\" from room \"http://localhost/rooms/21f4fb29-f1b7-4f7f-a23b-5bc66006f5fe\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbb4a7237ae2e0c55129a7f7d0f92599","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cbb4a7237ae2e0c55129a7f7d0f92599","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c4679ec-7931-4605-b91a-693cb9ba1c99': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c4679ec-7931-4605-b91a-693cb9ba1c99","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"e03fba5c-1cb7-40da-956a-331308ec3728","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.864195} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"034517d8-9076-4df3-b833-94e26fb72211","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.8645005} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66329c589acdfb3efc5b8872f4619727","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"}}},"level":"info","message":"received a callback","requestID":"cbb4a7237ae2e0c55129a7f7d0f92599"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"66329c589acdfb3efc5b8872f4619727","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"}}},"level":"info","message":"received a callback","requestID":"66329c589acdfb3efc5b8872f4619727"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"11b06c50-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2c4679ec-7931-4605-b91a-693cb9ba1c99","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"11b06c50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99 204 39ms","method":"DELETE","requestID":"11b06c50-793f-11ef-9733-5750b05365a5","responseTime":39,"status":204,"url":"/peerconnections/2c4679ec-7931-4605-b91a-693cb9ba1c99"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"},"level":"info","message":"Successfully finished experiment","requestID":"cd300418179fe64f227963c41ccfbe84"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11b945f0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc52085c0-476b-4780-ba01-9d4d586a5dee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4c7cdde-5925-42aa-b8ba-ddee6b259f3b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.9083998} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.117743,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11b945f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee","object_type":"device","rebac_allow":false,"scope_allow":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":"11b945f0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11b945f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling 200 10ms","method":"POST","requestID":"11b945f0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/c52085c0-476b-4780-ba01-9d4d586a5dee/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7512b96-573d-4cb9-9b9a-d45c4954a1e6': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7512b96-573d-4cb9-9b9a-d45c4954a1e6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"1e5c7bf7-ea0e-40d2-9adc-7fd1ccc661d5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.9147065} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67dc5958-f436-4fcd-98ad-3ecbe055cee0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.914942} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11bb1ab0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"cd300418179fe64f227963c41ccfbe84","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6be870f1-5cd0-407b-b37f-e07497deaef4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96125ba8-6152-45f6-964a-d53e57fe0d7b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049725.9201329} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445514,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"11bb1ab0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11bb1ab0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11bb1ab0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling 200 10ms","method":"POST","requestID":"11bb1ab0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/6be870f1-5cd0-407b-b37f-e07497deaef4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6","requestID":"cd300418179fe64f227963c41ccfbe84"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd300418179fe64f227963c41ccfbe84"} experiment-1 | {"level":"info","message":"DELETE /experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6 204 142ms","method":"DELETE","requestID":"cd300418179fe64f227963c41ccfbe84","responseTime":142,"status":204,"url":"/experiments/f7512b96-573d-4cb9-9b9a-d45c4954a1e6"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"2.196","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3d1931ab7757cf97b7d60c4840378876"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"cbb4a7237ae2e0c55129a7f7d0f92599","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"cbb4a7237ae2e0c55129a7f7d0f92599"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"66329c589acdfb3efc5b8872f4619727","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"66329c589acdfb3efc5b8872f4619727"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0","level":"info","message":"auth send jwt","requestID":"a82ac648c62ca7ba86646881ca5e3be3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a82ac648c62ca7ba86646881ca5e3be3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a82ac648c62ca7ba86646881ca5e3be3"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c52085c0-476b-4780-ba01-9d4d586a5dee' closed"} gateway-1 | {"time_local":"23/Sep/2024:00:02:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.665","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":"f3e7a83b0ebdc1ba5849a97e756d51ed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.107007,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"a82ac648c62ca7ba86646881ca5e3be3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049725,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNX0.GDxOhfWNmYIaUhA4UwNB8oklYbaRRT2QinOT0H1gou0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"49153254-d15c-4cc7-ae78-a7155ad26e21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0014071} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae53efa7-f132-4d44-9cdb-de133c718e33","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0060024} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6be870f1-5cd0-407b-b37f-e07497deaef4' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"7d868b1d-210a-4dfd-b6fc-8350b4d8de54","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0152948} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07d481b6-b5cc-46fd-8086-969d13b0ec9c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0153835} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"ea6c96bf-c5a5-407d-852d-137a6b5f475e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0194461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a82ac648c62ca7ba86646881ca5e3be3"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"a82ac648c62ca7ba86646881ca5e3be3","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a82ac648c62ca7ba86646881ca5e3be3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"18030a77da121eac0bac698c3c52cc71"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"18030a77da121eac0bac698c3c52cc71"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.705599,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"18030a77da121eac0bac698c3c52cc71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"44d9d880-1513-4206-919e-7a2cbac89022","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.046848} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6f9e092-c316-472e-92b0-aec195f64eec","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0509121} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"73d0301f-de7f-4590-8cb9-7cda9670e330","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0617495} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ed5cdb4-6651-415a-aae9-f4b9c9eece12","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.0618656} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"a83e91b1-0b5c-423c-bb85-a625b6a52e44","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.065574} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"18030a77da121eac0bac698c3c52cc71"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18030a77da121eac0bac698c3c52cc71"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"18030a77da121eac0bac698c3c52cc71","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"626415ec22407f3afa9265aa6c1a8a33"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"626415ec22407f3afa9265aa6c1a8a33","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"62a36936ff78fa093755f5c864907065"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"62a36936ff78fa093755f5c864907065","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"626415ec22407f3afa9265aa6c1a8a33"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"62a36936ff78fa093755f5c864907065"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639896,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"626415ec22407f3afa9265aa6c1a8a33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"626415ec22407f3afa9265aa6c1a8a33","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.765278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"62a36936ff78fa093755f5c864907065","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"62a36936ff78fa093755f5c864907065","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"982174d9-074d-4b8a-b70d-6cf5fdfa984e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.5444214} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"626415ec22407f3afa9265aa6c1a8a33","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"35540c54-f1bf-4b0f-8cc2-81a2b87b44e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.5450108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62a36936ff78fa093755f5c864907065","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b75470d6-cb6d-41db-91ea-97e10b1f0f2e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.550138} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"626415ec22407f3afa9265aa6c1a8a33","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50abd501-621a-4983-9f55-7f11a0e0685d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.5511706} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"62a36936ff78fa093755f5c864907065","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"d77af8ee-5038-4bf4-a2c3-49edd46a70b3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.554046} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62a36936ff78fa093755f5c864907065","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"62a36936ff78fa093755f5c864907065"} device-1 | {"level":"info","message":"PATCH /devices/a3f723d7-0aee-456f-b45c-eee36803aea9 200 22ms","method":"PATCH","requestID":"62a36936ff78fa093755f5c864907065","responseTime":22,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a3f723d7-0aee-456f-b45c-eee36803aea9 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"62a36936ff78fa093755f5c864907065"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898544,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c043d6b6f47ddb58e14f576d4f4aa01b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"dfbdfcba-3ac4-4638-843c-68febeb2f5ed","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.5658708} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"626415ec22407f3afa9265aa6c1a8a33","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"626415ec22407f3afa9265aa6c1a8a33"} device-1 | {"level":"info","message":"PATCH /devices/3815f588-d4f9-4460-b477-fc846637c112 200 36ms","method":"PATCH","requestID":"626415ec22407f3afa9265aa6c1a8a33","responseTime":36,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3815f588-d4f9-4460-b477-fc846637c112 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"626415ec22407f3afa9265aa6c1a8a33"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"c5aff2c0b4ec21529da5d527c53b84c8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c5aff2c0b4ec21529da5d527c53b84c8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c5aff2c0b4ec21529da5d527c53b84c8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b"} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/websocket 200 15ms","method":"POST","requestID":"c043d6b6f47ddb58e14f576d4f4aa01b","responseTime":15,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/websocket"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.733103,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c5aff2c0b4ec21529da5d527c53b84c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5aff2c0b4ec21529da5d527c53b84c8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c5aff2c0b4ec21529da5d527c53b84c8"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c5aff2c0b4ec21529da5d527c53b84c8"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/websocket 200 23ms","method":"POST","requestID":"c5aff2c0b4ec21529da5d527c53b84c8","responseTime":23,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"75389575b60928fbd5c05419c83380c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"75389575b60928fbd5c05419c83380c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"75389575b60928fbd5c05419c83380c8"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942849,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"75389575b60928fbd5c05419c83380c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"75389575b60928fbd5c05419c83380c8","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"8f74d029-4b7f-4815-8555-801257cc038d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.6247795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"75389575b60928fbd5c05419c83380c8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"75389575b60928fbd5c05419c83380c8"} device-1 | {"level":"info","message":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? 200 14ms","method":"GET","requestID":"75389575b60928fbd5c05419c83380c8","responseTime":14,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"75389575b60928fbd5c05419c83380c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"9bd333266805048057bd309f00d2753e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9bd333266805048057bd309f00d2753e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9bd333266805048057bd309f00d2753e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179215,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9bd333266805048057bd309f00d2753e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9bd333266805048057bd309f00d2753e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"2a902fa1-1408-4d81-939c-bc725d2e2a41","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.6473851} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9bd333266805048057bd309f00d2753e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9bd333266805048057bd309f00d2753e"} device-1 | {"level":"info","message":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? 200 16ms","method":"GET","requestID":"9bd333266805048057bd309f00d2753e","responseTime":16,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9bd333266805048057bd309f00d2753e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"46ef1986862be8e13112422c4314f012"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"46ef1986862be8e13112422c4314f012","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"46ef1986862be8e13112422c4314f012"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.303196,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"46ef1986862be8e13112422c4314f012","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46ef1986862be8e13112422c4314f012","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to run experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to book experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully booked experiment","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"123357f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1233a610-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.255901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"123357f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"123357f0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805613,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1233a610-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1233a610-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"555515d2-b16a-4b9a-8e8f-f0ec86b20cc9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7144647} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"123357f0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"66f65667-bace-4e01-a6f1-1e5614d2305a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7196} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1233a610-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"123357f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? 200 22ms","method":"GET","requestID":"123357f0-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1233a610-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? 200 22ms","method":"GET","requestID":"1233a610-793f-11ef-9733-5750b05365a5","responseTime":22,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Setting up experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"46ef1986862be8e13112422c4314f012"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully set up experiment","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"123e0650-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"123e2d60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"123e7b80-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976769,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully running experiment","requestID":"46ef1986862be8e13112422c4314f012"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"123e0650-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"123e0650-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.789816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"123e2d60-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"123e2d60-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.056173,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa6d7e52-2224-496e-a329-bbba21718bdc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7830663} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"123e7b80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","rebac_allow":false,"scope_allow":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":"123e7b80-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"abf667e4-eee5-49f8-9a21-41592338a198","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7868493} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"123e0650-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"123e7b80-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"833fddfb-f56b-4898-a06a-25bcfbeae667","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7901611} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling 200 14ms","method":"POST","requestID":"123e7b80-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"123e2d60-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12413aa0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"123e0650-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? 200 24ms","method":"GET","requestID":"123e0650-793f-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"123e2d60-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? 200 24ms","method":"GET","requestID":"123e2d60-793f-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"059dc445-a7f3-4340-a4d3-c35a9a3fb3ce","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.7989604} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.841833,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12413aa0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12413aa0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12427320-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12413aa0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/signaling 200 10ms","method":"POST","requestID":"12413aa0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdbc5c08-3eca-4e94-9850-1a200bc84a21","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8052137} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F81ede7aa-2cc1-4537-aad8-0dee65d79da3#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F81ede7aa-2cc1-4537-aad8-0dee65d79da3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c4e49a02-69ab-49ee-a4eb-1e0fe2d0f82c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8054411} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"46ef1986862be8e13112422c4314f012","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcf498c5-b941-43cd-91db-2222be356033","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.807656} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.5957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12427320-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12427320-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12427320-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling 200 10ms","method":"POST","requestID":"12427320-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12446ef0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"46ef1986862be8e13112422c4314f012","responseTime":156,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46ef1986862be8e13112422c4314f012"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7841bcbd-ccc4-4d0e-8923-7ae5886ee88f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8199131} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"1895de3dc6903fa5356d112723c1fbb6"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.680417,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1895de3dc6903fa5356d112723c1fbb6","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12446ef0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","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 called","requestID":"1895de3dc6903fa5356d112723c1fbb6"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12446ef0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12446ef0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707864,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/signaling 200 10ms","method":"POST","requestID":"12446ef0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1895de3dc6903fa5356d112723c1fbb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1895de3dc6903fa5356d112723c1fbb6","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"124643b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12466ac0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"8beeaace-5001-431a-a414-d9e9061314a3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8291862} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1895de3dc6903fa5356d112723c1fbb6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776316,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"124643b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"124643b0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12466ac0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12466ac0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1895de3dc6903fa5356d112723c1fbb6"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1895de3dc6903fa5356d112723c1fbb6"} device-1 | {"level":"info","message":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? 200 14ms","method":"GET","requestID":"1895de3dc6903fa5356d112723c1fbb6","responseTime":14,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.015246645Z"}]},"request_id":"4dbee4f5-54b3-4a7a-8c25-61e2e61fd5ab","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.835927} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"124643b0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"10eb4158-0e51-4bb7-b617-e81ae92ee6ae","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.837064} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12466ac0-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"596f2780da43856a5f9e9b29c4657e69"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"124643b0-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"596f2780da43856a5f9e9b29c4657e69","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/a3f723d7-0aee-456f-b45c-eee36803aea9? 200 16ms","method":"GET","requestID":"124643b0-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12466ac0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? 200 16ms","method":"GET","requestID":"12466ac0-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"596f2780da43856a5f9e9b29c4657e69"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Building connection plan","requestID":"46ef1986862be8e13112422c4314f012"} 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":"284d6735-eee9-44b0-bd74-52a3673d3614"},{"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":"ec9dbb04-d50c-49db-988b-4552a8fd47ec"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"38fd5590-dff1-48a0-b168-6992ed961e53"}]},"level":"info","message":"Built pairwise service configurations","requestID":"46ef1986862be8e13112422c4314f012"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"124929e0-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"124929e0-793f-11ef-a51e-0dff660adfff"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741302,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"124929e0-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"596f2780da43856a5f9e9b29c4657e69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"596f2780da43856a5f9e9b29c4657e69","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37?id=032d1cf9-88af-4cfb-9455-51de3f9bcc9f","ws://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37?id=65ced1fd-0212-4a9d-b100-0ac593a00f37"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:06.061712414Z"}]},"request_id":"35f9899b-b91a-474b-8a68-11b6bd84b55b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.852207} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"596f2780da43856a5f9e9b29c4657e69","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.79563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1249c620-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1249c620-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"596f2780da43856a5f9e9b29c4657e69"} device-1 | {"level":"info","message":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? 200 13ms","method":"GET","requestID":"596f2780da43856a5f9e9b29c4657e69","responseTime":13,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3815f588-d4f9-4460-b477-fc846637c112? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"596f2780da43856a5f9e9b29c4657e69"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"327d9f91-15aa-4f07-a98a-5ba4061f21e3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8628037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26817b6d-4b70-45aa-8b7a-9c01eab9526d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.8629725} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1249c620-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d'","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d'","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"1249c620-793f-11ef-9733-5750b05365a5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1249c620-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"124f4460-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\"","requestID":"124f4460-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"124f4460-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"124f6b70-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"65ced1fd-0212-4a9d-b100-0ac593a00f37\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\"","requestID":"124f6b70-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"124f6b70-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4557ed675713ac4608395d03254a0af","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e4557ed675713ac4608395d03254a0af","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"}}},"level":"info","message":"received a callback","requestID":"e4557ed675713ac4608395d03254a0af"} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"e4557ed675713ac4608395d03254a0af","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +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":"e4557ed675713ac4608395d03254a0af"} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"46ef1986862be8e13112422c4314f012"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12547480-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47e1bac1-4be4-48a7-a6a2-8c5816ee727b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.925384} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1d6d492654fba8d7510a501f8d929355","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1d6d492654fba8d7510a501f8d929355","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12547480-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","rebac_allow":false,"scope_allow":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":"12547480-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"}}},"level":"info","message":"received a callback","requestID":"1d6d492654fba8d7510a501f8d929355"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"12564940-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12547480-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling 200 16ms","method":"POST","requestID":"12547480-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F79f0720d-2984-4d1e-bcfe-5e398d1f402d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93acf39d-58eb-476d-bbb4-1bddf6ed9fb9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.937913} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.118467,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12575ab0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12564940-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d","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":"12564940-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"12564940-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} device-1 | {"level":"info","message":"GET /peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d 200 10ms","method":"GET","requestID":"12564940-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28479671-ac6c-4325-a3d1-4fefad348a0e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.9435236} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.821942,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12575ab0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12575ab0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12575ab0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/signaling 200 9ms","method":"POST","requestID":"12575ab0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"1d6d492654fba8d7510a501f8d929355","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"1d6d492654fba8d7510a501f8d929355"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"125a40e0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d471aba1-2bd3-447d-b52e-872619273923","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.9624465} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.663528,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"125a40e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"125a40e0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"125a40e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/signaling 200 8ms","method":"POST","requestID":"125a40e0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"125ba070-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bf9313c-1cad-4ef8-8514-8ca6108140bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049726.9730175} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.846098,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"125ba070-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","rebac_allow":false,"scope_allow":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":"125ba070-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"125ba070-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling 200 11ms","method":"POST","requestID":"125ba070-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw","level":"info","message":"auth send jwt","requestID":"260397eb585905b7e7f45ff31b0ecdcd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"260397eb585905b7e7f45ff31b0ecdcd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","requestID":"260397eb585905b7e7f45ff31b0ecdcd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.483445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"260397eb585905b7e7f45ff31b0ecdcd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049726,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyNn0.9Fl93E2j2vasHFpOsq-BGZCmJd830dl2lE8O-xMzqVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"260397eb585905b7e7f45ff31b0ecdcd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","requestID":"260397eb585905b7e7f45ff31b0ecdcd"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"260397eb585905b7e7f45ff31b0ecdcd"} experiment-1 | {"level":"info","message":"GET /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3 200 15ms","method":"GET","requestID":"260397eb585905b7e7f45ff31b0ecdcd","responseTime":15,"status":200,"url":"/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b531b4d83132a8b98c5f4beb5ff51551","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.782219,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b531b4d83132a8b98c5f4beb5ff51551","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b531b4d83132a8b98c5f4beb5ff51551","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Attempting to finish experiment","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1265b290-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.270595,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1265b290-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1265b290-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37?id=032d1cf9-88af-4cfb-9455-51de3f9bcc9f HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"679c9f5b5cec01d645b9d52519354023"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37?id=65ced1fd-0212-4a9d-b100-0ac593a00f37 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.161","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bdf2c765e0b7db2cc4441b7856849dc9"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"032d1cf9-88af-4cfb-9455-51de3f9bcc9f\" from room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"65ced1fd-0212-4a9d-b100-0ac593a00f37\" in room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"65ced1fd-0212-4a9d-b100-0ac593a00f37\" from room \"http://localhost/rooms/7e1830d7-a27a-4997-bec4-906dcb28bf37\""} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ed77fec797df0426f7622fa9b92f798","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0ed77fec797df0426f7622fa9b92f798","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F79f0720d-2984-4d1e-bcfe-5e398d1f402d': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F79f0720d-2984-4d1e-bcfe-5e398d1f402d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"52218823-5b67-4a5d-96b0-cc1bd7279b2b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.0534925} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f1bd085739bceb9cf5f5b7bedad7b009","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"}}},"level":"info","message":"received a callback","requestID":"0ed77fec797df0426f7622fa9b92f798"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f1bd085739bceb9cf5f5b7bedad7b009","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c87a269-84d9-4023-84c0-645d72d22f84","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.0540948} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"}}},"level":"info","message":"received a callback","requestID":"f1bd085739bceb9cf5f5b7bedad7b009"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"1265b290-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"79f0720d-2984-4d1e-bcfe-5e398d1f402d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1265b290-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d 204 41ms","method":"DELETE","requestID":"1265b290-793f-11ef-9733-5750b05365a5","responseTime":41,"status":204,"url":"/peerconnections/79f0720d-2984-4d1e-bcfe-5e398d1f402d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"},"level":"info","message":"Successfully finished experiment","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"126f4f80-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3815f588-d4f9-4460-b477-fc846637c112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57dcd5dc-663f-4dc0-b833-76951c6e63a6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.1041265} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.110373,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"126f4f80-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112","object_type":"device","rebac_allow":false,"scope_allow":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":"126f4f80-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"126f4f80-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/3815f588-d4f9-4460-b477-fc846637c112/signaling 200 15ms","method":"POST","requestID":"126f4f80-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/3815f588-d4f9-4460-b477-fc846637c112/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12720ea0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F81ede7aa-2cc1-4537-aad8-0dee65d79da3': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F81ede7aa-2cc1-4537-aad8-0dee65d79da3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"16e022c7-c471-4e5f-b44d-1a441e91a0e6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.1148143} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df9404a3-af42-49b2-822c-3b52cc054a38","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.1155257} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"b531b4d83132a8b98c5f4beb5ff51551","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3f723d7-0aee-456f-b45c-eee36803aea9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dffa182f-985c-455e-8c7f-f572f228d8d9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.1228569} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.560335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12720ea0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9","object_type":"device","rebac_allow":false,"scope_allow":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":"12720ea0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12720ea0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling 200 15ms","method":"POST","requestID":"12720ea0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/a3f723d7-0aee-456f-b45c-eee36803aea9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b531b4d83132a8b98c5f4beb5ff51551"} experiment-1 | {"level":"info","message":"DELETE /experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3 204 167ms","method":"DELETE","requestID":"b531b4d83132a8b98c5f4beb5ff51551","responseTime":167,"status":204,"url":"/experiments/81ede7aa-2cc1-4537-aad8-0dee65d79da3"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.608","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7021eb5d9646653d5d8d53c3449cc002"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.589","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"839ebccbb63e4fe6f72dccf3a90c41d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"0ed77fec797df0426f7622fa9b92f798","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"0ed77fec797df0426f7622fa9b92f798"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"f1bd085739bceb9cf5f5b7bedad7b009","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"f1bd085739bceb9cf5f5b7bedad7b009"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3815f588-d4f9-4460-b477-fc846637c112' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"64cbbeaecac32c595434d4852ad11716"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"64cbbeaecac32c595434d4852ad11716","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"64cbbeaecac32c595434d4852ad11716"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a3f723d7-0aee-456f-b45c-eee36803aea9' closed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.886603,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"64cbbeaecac32c595434d4852ad11716","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eee6d86f-ba9b-4549-ad8d-f3b81d559918","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2244635} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"428a767b-ad20-4251-a588-22ad25b4cfb6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.230169} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"473a8c38-80e0-40d1-aa91-71093c252dfd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.241054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55712db6-3c03-47f7-923a-ae1461f9e832","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2413533} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"74cdbcfd-0e67-437d-a6f9-e552b50a9d5d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.245505} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"64cbbeaecac32c595434d4852ad11716"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64cbbeaecac32c595434d4852ad11716"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"64cbbeaecac32c595434d4852ad11716","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"03bfb3ea174bc830fefddaa849787f76"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03bfb3ea174bc830fefddaa849787f76","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"03bfb3ea174bc830fefddaa849787f76"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.932465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"03bfb3ea174bc830fefddaa849787f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c1b2b444-34c9-4ebd-8968-6e41dfc3333f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.270786} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"328a13fc-bf9e-426b-a46c-e910962c5576","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2756433} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"679a47cd-9f72-498c-8d43-bcfe772cbbaa","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2918406} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09427646-a5ca-4777-9ed5-ab24323612c5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2919557} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"9366bea6-ad80-4d0a-8c85-27d126e95642","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.2963428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"03bfb3ea174bc830fefddaa849787f76"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03bfb3ea174bc830fefddaa849787f76"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"03bfb3ea174bc830fefddaa849787f76","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"bbf16a6d2b60c684ab99eadca352c89f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bbf16a6d2b60c684ab99eadca352c89f","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"61888357e7acc23abf9d5b01e44d3f48"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"61888357e7acc23abf9d5b01e44d3f48","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bbf16a6d2b60c684ab99eadca352c89f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"61888357e7acc23abf9d5b01e44d3f48"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"bbf16a6d2b60c684ab99eadca352c89f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bbf16a6d2b60c684ab99eadca352c89f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.633303,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"61888357e7acc23abf9d5b01e44d3f48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"61888357e7acc23abf9d5b01e44d3f48","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"e466d1f1-2643-4d59-9f91-b943fe2af065","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.774933} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bbf16a6d2b60c684ab99eadca352c89f","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"349b4f94-7228-4ce6-8a2f-948db356574c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.775693} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"61888357e7acc23abf9d5b01e44d3f48","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a08d6fb-d3d6-4a43-bc81-e8341db4c5cb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.7807937} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bbf16a6d2b60c684ab99eadca352c89f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba425e8c-4e90-42da-b55d-4bef7a7dc46f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.7823267} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"61888357e7acc23abf9d5b01e44d3f48","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"1269d7ed-7280-492e-8e3d-4c21c4440170","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.7858934} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61888357e7acc23abf9d5b01e44d3f48","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"61888357e7acc23abf9d5b01e44d3f48"} device-1 | {"level":"info","message":"PATCH /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37 200 21ms","method":"PATCH","requestID":"61888357e7acc23abf9d5b01e44d3f48","responseTime":22,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"61888357e7acc23abf9d5b01e44d3f48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"431e13b7ce0a5686992e386207e2519d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"431e13b7ce0a5686992e386207e2519d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"431e13b7ce0a5686992e386207e2519d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"2a8970a9-a201-4889-886d-f1728e4d95f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.7966254} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bbf16a6d2b60c684ab99eadca352c89f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895447,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bbf16a6d2b60c684ab99eadca352c89f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"431e13b7ce0a5686992e386207e2519d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bbf16a6d2b60c684ab99eadca352c89f"} device-1 | {"level":"info","message":"PATCH /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4 200 35ms","method":"PATCH","requestID":"bbf16a6d2b60c684ab99eadca352c89f","responseTime":35,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"431e13b7ce0a5686992e386207e2519d","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"ee4a91396cb6ef17196461a1b3a6a211"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ee4a91396cb6ef17196461a1b3a6a211","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ee4a91396cb6ef17196461a1b3a6a211"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836829,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ee4a91396cb6ef17196461a1b3a6a211","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee4a91396cb6ef17196461a1b3a6a211","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"431e13b7ce0a5686992e386207e2519d"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/websocket 200 17ms","method":"POST","requestID":"431e13b7ce0a5686992e386207e2519d","responseTime":17,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"431e13b7ce0a5686992e386207e2519d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ee4a91396cb6ef17196461a1b3a6a211"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ee4a91396cb6ef17196461a1b3a6a211"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/websocket 200 16ms","method":"POST","requestID":"ee4a91396cb6ef17196461a1b3a6a211","responseTime":16,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"e5f70522ea6610db9b93036a121ffdb0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e5f70522ea6610db9b93036a121ffdb0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5f70522ea6610db9b93036a121ffdb0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e5f70522ea6610db9b93036a121ffdb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e5f70522ea6610db9b93036a121ffdb0","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"319dfdf2-162c-46ad-849c-baf7357c1530","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.8494773} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e5f70522ea6610db9b93036a121ffdb0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5f70522ea6610db9b93036a121ffdb0"} device-1 | {"level":"info","message":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? 200 9ms","method":"GET","requestID":"e5f70522ea6610db9b93036a121ffdb0","responseTime":9,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e5f70522ea6610db9b93036a121ffdb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"c57f7ee806302009e7b60f278e903aed"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c57f7ee806302009e7b60f278e903aed","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c57f7ee806302009e7b60f278e903aed"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.435277,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c57f7ee806302009e7b60f278e903aed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c57f7ee806302009e7b60f278e903aed","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"5471c78f-2055-4eb5-a63c-7bdf55385259","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.8643682} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c57f7ee806302009e7b60f278e903aed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c57f7ee806302009e7b60f278e903aed"} gateway-1 | {"time_local":"23/Sep/2024:00:02:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c57f7ee806302009e7b60f278e903aed"} device-1 | {"level":"info","message":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? 200 12ms","method":"GET","requestID":"c57f7ee806302009e7b60f278e903aed","responseTime":12,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4","level":"info","message":"auth send jwt","requestID":"0442bbdf0814a537d57fd95266388f9e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0442bbdf0814a537d57fd95266388f9e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0442bbdf0814a537d57fd95266388f9e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.108824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0442bbdf0814a537d57fd95266388f9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0442bbdf0814a537d57fd95266388f9e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to run experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to book experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully booked experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12ec95d0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132343,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12ec95d0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12ec95d0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"c08e5880-e569-4899-bd23-747badf77b4f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.9266849} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"1af8b03c-8376-4488-864e-1cc93532d9a7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.9283679} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"12ec95d0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? 200 18ms","method":"GET","requestID":"12ec6ec0-793f-11ef-9733-5750b05365a5","responseTime":18,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12ec95d0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? 200 19ms","method":"GET","requestID":"12ec95d0-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Setting up experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully set up experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12f6cf00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12f6f610-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12f74430-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully running experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.872167,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12f6cf00-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"12f6cf00-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689935,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12f6f610-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"12f6f610-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed0793ea-a57e-4f2f-a060-5881c4ba3a32","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.9961069} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"7ee3641a-094c-45f1-9dac-ee61f0c6639c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.9982214} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"7fd64a5e-bdd9-43b4-a318-e89ff817e350","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049727.9991972} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.980594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12f74430-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","rebac_allow":false,"scope_allow":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":"12f74430-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"12f6cf00-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"12f6f610-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12f74430-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling 200 19ms","method":"POST","requestID":"12f74430-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12f6cf00-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? 200 24ms","method":"GET","requestID":"12f6cf00-793f-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12f6f610-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? 200 24ms","method":"GET","requestID":"12f6f610-793f-11ef-9733-5750b05365a5","responseTime":24,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12fa9f90-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12faedb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.956177,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95be78ef-4812-4358-95bb-13d3380da397#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95be78ef-4812-4358-95bb-13d3380da397","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"ad4d45fb-cf01-4578-939b-194255ffc22a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0144072} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bae12ed4-ee4e-4bbc-939c-a90e915d2224","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.014611} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe0702b4-a3f4-40f6-aedd-2d934a84cead","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0153515} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12fa9f90-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","rebac_allow":false,"scope_allow":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":"12fa9f90-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"0442bbdf0814a537d57fd95266388f9e","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cd3c8c9-723b-4053-86c6-17f070b119ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0187042} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.776754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12faedb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","rebac_allow":false,"scope_allow":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":"12faedb0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0442bbdf0814a537d57fd95266388f9e"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0442bbdf0814a537d57fd95266388f9e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"0442bbdf0814a537d57fd95266388f9e","responseTime":152,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12fa9f90-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling 200 20ms","method":"POST","requestID":"12fa9f90-793f-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12faedb0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling 200 19ms","method":"POST","requestID":"12faedb0-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"e4b99ca7411d4198db60cd83790cdb0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e4b99ca7411d4198db60cd83790cdb0c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4b99ca7411d4198db60cd83790cdb0c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12fe2200-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970416,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"e4b99ca7411d4198db60cd83790cdb0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e4b99ca7411d4198db60cd83790cdb0c","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22330434-8455-4453-aa34-2ec12b3decd3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0399413} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.76352,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"12fe2200-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","rebac_allow":false,"scope_allow":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":"12fe2200-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"a4d8deb8-fdb0-4d7e-9f3e-c49b81dd3c6d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0421343} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4b99ca7411d4198db60cd83790cdb0c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4b99ca7411d4198db60cd83790cdb0c"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4b99ca7411d4198db60cd83790cdb0c"} device-1 | {"level":"info","message":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? 200 15ms","method":"GET","requestID":"e4b99ca7411d4198db60cd83790cdb0c","responseTime":15,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12fe2200-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling 200 15ms","method":"POST","requestID":"12fe2200-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13009300-793f-11ef-9733-5750b05365a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"fd14632679292bb9ca67333b26ea4f05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1300ba10-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fd14632679292bb9ca67333b26ea4f05","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd14632679292bb9ca67333b26ea4f05"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.39251,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829369,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"13009300-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13009300-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1300ba10-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1300ba10-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.627362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"fd14632679292bb9ca67333b26ea4f05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fd14632679292bb9ca67333b26ea4f05","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.241017207Z"}]},"request_id":"01690180-81e3-422f-8f79-13c45e177ef6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0574818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"3a1f5e5d-eb5e-4e34-a641-bd69ada4442d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0579834} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13009300-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1300ba10-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:07.291798711Z"}]},"request_id":"9ff8d4e4-4a03-4979-8236-69a9cff196d2","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0586867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd14632679292bb9ca67333b26ea4f05","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13009300-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37? 200 15ms","method":"GET","requestID":"13009300-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1300ba10-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? 200 15ms","method":"GET","requestID":"1300ba10-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd14632679292bb9ca67333b26ea4f05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Building connection plan","requestID":"0442bbdf0814a537d57fd95266388f9e"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd14632679292bb9ca67333b26ea4f05"} device-1 | {"level":"info","message":"GET /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4? 200 14ms","method":"GET","requestID":"fd14632679292bb9ca67333b26ea4f05","responseTime":14,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4?"} 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":"482b16bb-04f4-4042-bac4-c8fa7ad8de4f"},{"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":"8b00b85d-5522-4b58-9ecf-a9e566b2d480"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"964a4840-5749-49af-a482-790dd75ac2ff"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0442bbdf0814a537d57fd95266388f9e"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"13035220-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"13035220-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"13035220-793f-11ef-a51e-0dff660adfff","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7?id=4604e93b-c0f2-475f-a1cc-49e367f9e514","ws://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7?id=b02512be-49de-4550-a5c7-b1c5cfbb796d"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0442bbdf0814a537d57fd95266388f9e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.775217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1303c750-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049727,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyN30.nwOieCGpsA6EHuJAFGlCIq8c_PloCUWLLZgEZyMtFG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1303c750-793f-11ef-9733-5750b05365a5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"cb719fa8-24ba-4da2-a40f-5ebe816159dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0787344} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a94c9dd-0a7a-4b7d-a57e-3aa07324ca36","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.0789597} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1303c750-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a'","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a'","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"1303c750-793f-11ef-9733-5750b05365a5","responseTime":23,"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":"1303c750-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"13088240-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4604e93b-c0f2-475f-a1cc-49e367f9e514\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\"","requestID":"13088240-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"13088240-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1308a950-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\"","requestID":"1308a950-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1308a950-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\"","requestID":"1308a950-793f-11ef-a51e-0dff660adfff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c59627951968eb446156b60f540f4e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6c59627951968eb446156b60f540f4e8","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"}}},"level":"info","message":"received a callback","requestID":"6c59627951968eb446156b60f540f4e8"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"6c59627951968eb446156b60f540f4e8","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c59627951968eb446156b60f540f4e8"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0442bbdf0814a537d57fd95266388f9e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"130db260-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ab235f5-ab2f-4699-b66b-16000c2a09e6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.1386907} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.517254,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"130db260-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"130db260-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e29e2a4c3e5c0700dfaaa60500e24707","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"postDevicesByDeviceIdSignaling succeeded","requestID":"130db260-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e29e2a4c3e5c0700dfaaa60500e24707","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling 200 11ms","method":"POST","requestID":"130db260-793f-11ef-9733-5750b05365a5","responseTime":11,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"130f8720-793f-11ef-9733-5750b05365a5"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"}}},"level":"info","message":"received a callback","requestID":"e29e2a4c3e5c0700dfaaa60500e24707"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b76bc839-618e-4863-bd36-5ab7528d03bc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.1507092} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.50898,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"13104a70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"130f8720-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"130f8720-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"130f8720-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling 200 9ms","method":"POST","requestID":"130f8720-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F06c17cab-d7a1-47d1-a096-fd43b8e8b17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43452a8f-ae5c-4daa-b276-a8e6911c46ad","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.1559873} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.382858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"13104a70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13104a70-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"13104a70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a 200 8ms","method":"GET","requestID":"13104a70-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"e29e2a4c3e5c0700dfaaa60500e24707","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"e29e2a4c3e5c0700dfaaa60500e24707"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1313a5d0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97b712d6-d36d-43d2-bcff-6164e9afdf07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.1776934} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.447781,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1313a5d0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1313a5d0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1313a5d0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling 200 8ms","method":"POST","requestID":"1313a5d0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13152c70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0209d877-a951-4859-ab60-4565b4840360","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.187192} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.235277,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"13152c70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13152c70-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13152c70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling 200 7ms","method":"POST","requestID":"13152c70-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"4af89b00de6f7f5f8efe353aff6d4149"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4af89b00de6f7f5f8efe353aff6d4149","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/95be78ef-4812-4358-95bb-13d3380da397","requestID":"4af89b00de6f7f5f8efe353aff6d4149"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.901777,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4af89b00de6f7f5f8efe353aff6d4149","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4af89b00de6f7f5f8efe353aff6d4149","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/95be78ef-4812-4358-95bb-13d3380da397","requestID":"4af89b00de6f7f5f8efe353aff6d4149"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/95be78ef-4812-4358-95bb-13d3380da397 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4af89b00de6f7f5f8efe353aff6d4149"} experiment-1 | {"level":"info","message":"GET /experiments/95be78ef-4812-4358-95bb-13d3380da397 200 10ms","method":"GET","requestID":"4af89b00de6f7f5f8efe353aff6d4149","responseTime":10,"status":200,"url":"/experiments/95be78ef-4812-4358-95bb-13d3380da397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"390e392d527f856c9a9a2be80cd274bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"390e392d527f856c9a9a2be80cd274bb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/95be78ef-4812-4358-95bb-13d3380da397","requestID":"390e392d527f856c9a9a2be80cd274bb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.624478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"390e392d527f856c9a9a2be80cd274bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"390e392d527f856c9a9a2be80cd274bb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Attempting to finish experiment","requestID":"390e392d527f856c9a9a2be80cd274bb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"131d1bb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.09767,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"131d1bb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"131d1bb0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cda32ba6-7020-43b0-af79-660503383ba7?id=4604e93b-c0f2-475f-a1cc-49e367f9e514 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6eb23194f30eaa221a38cf42f7f07c1b"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cda32ba6-7020-43b0-af79-660503383ba7?id=b02512be-49de-4550-a5c7-b1c5cfbb796d HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"91707e9ba101fcf24efeeeeab3de5d43"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4604e93b-c0f2-475f-a1cc-49e367f9e514\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4604e93b-c0f2-475f-a1cc-49e367f9e514\" from room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" in room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b02512be-49de-4550-a5c7-b1c5cfbb796d\" from room \"http://localhost/rooms/cda32ba6-7020-43b0-af79-660503383ba7\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b785dbf82be927d3d050515c889e029","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F06c17cab-d7a1-47d1-a096-fd43b8e8b17a': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F06c17cab-d7a1-47d1-a096-fd43b8e8b17a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"0a3dd5b0-1000-49f0-9480-16e3cfb891de","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.2564619} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9b785dbf82be927d3d050515c889e029","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c53d78ff-f9c6-4f08-8b75-59277c98625a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.2571096} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f777e35c93346e3597c3c65154f13f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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-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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"}}},"level":"info","message":"received a callback","requestID":"9b785dbf82be927d3d050515c889e029"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2f777e35c93346e3597c3c65154f13f3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"131d1bb0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"}}},"level":"info","message":"received a callback","requestID":"2f777e35c93346e3597c3c65154f13f3"} device-1 | {"data":{"peerconnection":"06c17cab-d7a1-47d1-a096-fd43b8e8b17a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"131d1bb0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a 204 43ms","method":"DELETE","requestID":"131d1bb0-793f-11ef-9733-5750b05365a5","responseTime":43,"status":204,"url":"/peerconnections/06c17cab-d7a1-47d1-a096-fd43b8e8b17a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95be78ef-4812-4358-95bb-13d3380da397"},"level":"info","message":"Successfully finished experiment","requestID":"390e392d527f856c9a9a2be80cd274bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1326dfb0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7166806-bd05-4891-b483-87277cc2dc2c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.3060975} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.423616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1326dfb0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37","object_type":"device","rebac_allow":false,"scope_allow":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":"1326dfb0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1326dfb0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling 200 14ms","method":"POST","requestID":"1326dfb0-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37/signaling"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95be78ef-4812-4358-95bb-13d3380da397': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95be78ef-4812-4358-95bb-13d3380da397","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"8631b6f3-dbf0-4c35-9206-ccbfc1ad8f0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.31378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"965eea63-60b2-4f83-8990-cb67052c7b62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.3140583} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"390e392d527f856c9a9a2be80cd274bb","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"132977c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb426bc7f-8422-4985-8ffb-76d5a4c580c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79850f58-a0d1-4ee7-9ac8-aaee8046eceb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.3246796} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.369256,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"132977c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4","object_type":"device","rebac_allow":false,"scope_allow":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":"132977c0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"132977c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling 200 15ms","method":"POST","requestID":"132977c0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/95be78ef-4812-4358-95bb-13d3380da397","requestID":"390e392d527f856c9a9a2be80cd274bb"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/95be78ef-4812-4358-95bb-13d3380da397 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"390e392d527f856c9a9a2be80cd274bb"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.570","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"eda5983d6444b6c01d19591cd6c634d2"} experiment-1 | {"level":"info","message":"DELETE /experiments/95be78ef-4812-4358-95bb-13d3380da397 204 160ms","method":"DELETE","requestID":"390e392d527f856c9a9a2be80cd274bb","responseTime":160,"status":204,"url":"/experiments/95be78ef-4812-4358-95bb-13d3380da397"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.561","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c918d672d9d80b8250e1f1252a963927"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b785dbf82be927d3d050515c889e029"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"9b785dbf82be927d3d050515c889e029","responseTime":127,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"2f777e35c93346e3597c3c65154f13f3","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"2f777e35c93346e3597c3c65154f13f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"c35a1579bed555f1c96b4ccf043672fb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b426bc7f-8422-4985-8ffb-76d5a4c580c4' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"c35a1579bed555f1c96b4ccf043672fb"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.941917,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"c35a1579bed555f1c96b4ccf043672fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0f71b20e-1fc7-434f-aeeb-655b8f9a8e37' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f1181f9e-399a-4295-a0f5-f3069be5ba86","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4127917} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7d549cd-859a-41ff-9719-0571782d7e53","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4177754} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"db83e2e6-b335-4fb7-8e10-64434036fcbf","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4270377} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44776b86-c58b-411e-9f5c-845073867429","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.427167} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"b6e932ee-a837-4822-83d4-f5eaa809fd2f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4315891} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c35a1579bed555f1c96b4ccf043672fb"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c35a1579bed555f1c96b4ccf043672fb","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c35a1579bed555f1c96b4ccf043672fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM","level":"info","message":"auth send jwt","requestID":"4e387b0c31e4f02bff1a871e152fb271"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e387b0c31e4f02bff1a871e152fb271","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4e387b0c31e4f02bff1a871e152fb271"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.776222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"4e387b0c31e4f02bff1a871e152fb271","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049728,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTcyOH0.QqGEB2GTOMrNylhFtjP155oBp-Vb572PZVj1zytG_oM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"474aa16f-d4ae-4ea9-b397-bffb67c040dc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4544644} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64b25d11-8c90-45fc-92ae-3722a2fb09cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4588833} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"5962b6fc-54f5-4281-b7d9-f9b6f70809fc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4757564} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34dcf57b-39cb-4872-b479-86f4efb4637c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.475932} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"1a76441e-51fb-4ce4-ad2d-74aa24474c4e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049728.4798846} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4e387b0c31e4f02bff1a871e152fb271"} gateway-1 | {"time_local":"23/Sep/2024:00:02:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e387b0c31e4f02bff1a871e152fb271"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"4e387b0c31e4f02bff1a871e152fb271","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"30e3577ece7095d4879b26bacfc8ef54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"30e3577ece7095d4879b26bacfc8ef54","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/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":"30e3577ece7095d4879b26bacfc8ef54"} device-1 | {"level":"info","message":"OPTIONS /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/websocket 200 1ms","method":"OPTIONS","requestID":"30e3577ece7095d4879b26bacfc8ef54","responseTime":1,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"753cb135ff746de90ad125866c1ceefe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"753cb135ff746de90ad125866c1ceefe","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/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":"753cb135ff746de90ad125866c1ceefe"} device-1 | {"level":"info","message":"OPTIONS /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/websocket 200 1ms","method":"OPTIONS","requestID":"753cb135ff746de90ad125866c1ceefe","responseTime":1,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"9140a3dd6bc7dc04de91d152abdae83c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9140a3dd6bc7dc04de91d152abdae83c","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9140a3dd6bc7dc04de91d152abdae83c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230418,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"b7bea5d3a558ba6512d258e089a9dc08"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"9140a3dd6bc7dc04de91d152abdae83c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b7bea5d3a558ba6512d258e089a9dc08","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9140a3dd6bc7dc04de91d152abdae83c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b7bea5d3a558ba6512d258e089a9dc08"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297593,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"b7bea5d3a558ba6512d258e089a9dc08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b7bea5d3a558ba6512d258e089a9dc08","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9140a3dd6bc7dc04de91d152abdae83c"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9140a3dd6bc7dc04de91d152abdae83c"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/websocket 200 23ms","method":"POST","requestID":"9140a3dd6bc7dc04de91d152abdae83c","responseTime":23,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b7bea5d3a558ba6512d258e089a9dc08"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.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":"b7bea5d3a558ba6512d258e089a9dc08"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/websocket 200 27ms","method":"POST","requestID":"b7bea5d3a558ba6512d258e089a9dc08","responseTime":27,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd9b3821afd1c7dc62df89c0e7bba5e2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"bd9b3821afd1c7dc62df89c0e7bba5e2","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bd9b3821afd1c7dc62df89c0e7bba5e2"} device-1 | {"level":"info","message":"OPTIONS /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 0ms","method":"OPTIONS","requestID":"bd9b3821afd1c7dc62df89c0e7bba5e2","responseTime":0,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"462f5e297a9c25375aa2f2482a2682a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"462f5e297a9c25375aa2f2482a2682a2","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"8154ec52a8ec7bbdf19466af1f950735"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"462f5e297a9c25375aa2f2482a2682a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8154ec52a8ec7bbdf19466af1f950735","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 1ms","method":"OPTIONS","requestID":"462f5e297a9c25375aa2f2482a2682a2","responseTime":1,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8154ec52a8ec7bbdf19466af1f950735"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709227,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"1c842a465a1e3500613813d0a87548fc"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8154ec52a8ec7bbdf19466af1f950735","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1c842a465a1e3500613813d0a87548fc","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8154ec52a8ec7bbdf19466af1f950735","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1c842a465a1e3500613813d0a87548fc"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868833,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1c842a465a1e3500613813d0a87548fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c842a465a1e3500613813d0a87548fc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"3d180ec0-5475-4420-8845-5ddf52722207","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.5373352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8154ec52a8ec7bbdf19466af1f950735","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1ac185c-e514-4b6a-9b0b-5d5276204527","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.5439758} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8154ec52a8ec7bbdf19466af1f950735","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"b11dceca-46ea-4ca3-9040-06346d2c357a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.5455358} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1c842a465a1e3500613813d0a87548fc","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f063786-2456-4d6f-9592-b163d70d7218","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.551514} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1c842a465a1e3500613813d0a87548fc","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"67a8ef09-4d5c-4f91-97f9-415db61b1aa8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.5601692} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8154ec52a8ec7bbdf19466af1f950735","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8154ec52a8ec7bbdf19466af1f950735"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"8154ec52a8ec7bbdf19466af1f950735"} device-1 | {"level":"info","message":"PATCH /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 37ms","method":"PATCH","requestID":"8154ec52a8ec7bbdf19466af1f950735","responseTime":37,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"afd0e766-c82f-4bdf-9fe5-2c67ef4fd8be","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.571913} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c842a465a1e3500613813d0a87548fc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1c842a465a1e3500613813d0a87548fc"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"1c842a465a1e3500613813d0a87548fc"} device-1 | {"level":"info","message":"PATCH /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 42ms","method":"PATCH","requestID":"1c842a465a1e3500613813d0a87548fc","responseTime":42,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"1b78356b75f37cc22066ce9507809024"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b78356b75f37cc22066ce9507809024","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b78356b75f37cc22066ce9507809024"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702664,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1b78356b75f37cc22066ce9507809024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b78356b75f37cc22066ce9507809024","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"c180970e-872d-47a7-a979-59ff917a4bdd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.5933268} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b78356b75f37cc22066ce9507809024","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b78356b75f37cc22066ce9507809024"} device-1 | {"level":"info","message":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 13ms","method":"GET","requestID":"1b78356b75f37cc22066ce9507809024","responseTime":13,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b78356b75f37cc22066ce9507809024"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"654954f86f57d3b062c94380e32bd472"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"654954f86f57d3b062c94380e32bd472","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"654954f86f57d3b062c94380e32bd472"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.110453,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"654954f86f57d3b062c94380e32bd472","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"654954f86f57d3b062c94380e32bd472","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"80211751-218d-4d93-a7cf-bdc81518439c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.612652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"654954f86f57d3b062c94380e32bd472","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"654954f86f57d3b062c94380e32bd472"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"654954f86f57d3b062c94380e32bd472"} device-1 | {"level":"info","message":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 15ms","method":"GET","requestID":"654954f86f57d3b062c94380e32bd472","responseTime":15,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.239669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to run experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to book experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully booked experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"148fe590-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"149033b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629447,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"148fe590-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"148fe590-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.243133,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"149033b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"149033b0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"be9e2169-a12e-4c21-a6c8-480639256d3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.6749854} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"148fe590-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"b3da00f3-a57b-4569-a643-ab677e975cea","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.6769314} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"149033b0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"148fe590-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 17ms","method":"GET","requestID":"148fe590-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"149033b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 16ms","method":"GET","requestID":"149033b0-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Setting up experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully set up experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1499a990-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1499d0a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149a1ec0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully running experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.133413,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.812052,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1499a990-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1499a990-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1499d0a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1499d0a0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c92ca10-6e45-481e-8124-4fe2c163ec55","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7396135} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"149a1ec0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","rebac_allow":false,"scope_allow":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":"149a1ec0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149a1ec0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling 200 15ms","method":"POST","requestID":"149a1ec0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"260fbacf-2b04-4da1-803d-145b18901fac","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7470448} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1499a990-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"37196cc4-bc29-4079-95db-0cc60efb7524","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7490757} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149d04f0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1499d0a0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d794a82d-ce51-4262-a21a-78330bd644c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7580438} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1499a990-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.224944,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} device-1 | {"level":"info","message":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 31ms","method":"GET","requestID":"1499a990-793f-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"149d04f0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","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":"1499d0a0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"149d04f0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 31ms","method":"GET","requestID":"1499d0a0-793f-11ef-9733-5750b05365a5","responseTime":31,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F943011fc-4a8a-4b24-b943-8ccb913d524c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F943011fc-4a8a-4b24-b943-8ccb913d524c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"847f1b12-ccaa-4365-b80f-956d8de5a59a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.761194} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"224634d2-8fb0-4337-91c7-ef4b92e3d03f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.762082} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149ed9b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149d04f0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling 200 15ms","method":"POST","requestID":"149d04f0-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ad6556b-e4ce-47ad-b4a6-cd93b7325a8f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7694771} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.663909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"149ed9b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","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/943011fc-4a8a-4b24-b943-8ccb913d524c","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"149ed9b0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149ed9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling 200 12ms","method":"POST","requestID":"149ed9b0-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14a0fc90-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.031311,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9098ab20-8326-4ab9-aa6c-dc4df91cc858","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7829323} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.795401,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14a0fc90-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","rebac_allow":false,"scope_allow":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":"14a0fc90-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14a0fc90-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling 200 10ms","method":"POST","requestID":"14a0fc90-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"c56d8a94-8a96-4e06-ba78-18f82f3b88d4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.7876356} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14a2f860-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14a31f70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061"} device-1 | {"level":"info","message":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 14ms","method":"GET","requestID":"dd9ca8dc0b67e6be4819d55ccf9ee061","responseTime":14,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954533,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14a2f860-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14a2f860-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.851804,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14a31f70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14a31f70-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk","level":"info","message":"auth send jwt","requestID":"34f8d7c113bba67be297ef62ce9e1872"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"34f8d7c113bba67be297ef62ce9e1872","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34f8d7c113bba67be297ef62ce9e1872"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.426979023Z"}]},"request_id":"5d32fd54-a61c-4bfd-8ba0-625ab13003cc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.799255} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14a2f860-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"5f759af6-8e4d-49bb-999b-9798a41678a0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.8004174} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14a2f860-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"14a31f70-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} device-1 | {"level":"info","message":"GET /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c? 200 13ms","method":"GET","requestID":"14a2f860-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"34f8d7c113bba67be297ef62ce9e1872","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34f8d7c113bba67be297ef62ce9e1872","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14a31f70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 16ms","method":"GET","requestID":"14a31f70-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:08.475717637Z"}]},"request_id":"ddec043e-20e9-4048-b797-412d4b569efc","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.8080614} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Building connection plan","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"e60899a1-1317-4fba-b092-f854b2ae18a9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"dbf02dab-2a8c-45d0-af4b-e556dd9f6d11"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"af310925-0d22-44d4-8307-86eb82aa94fa"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34f8d7c113bba67be297ef62ce9e1872","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34f8d7c113bba67be297ef62ce9e1872"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} gateway-1 | {"time_local":"23/Sep/2024:00:02:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34f8d7c113bba67be297ef62ce9e1872"} device-1 | {"level":"info","message":"GET /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7? 200 14ms","method":"GET","requestID":"34f8d7c113bba67be297ef62ce9e1872","responseTime":14,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.889477,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14a605a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049730,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMH0.sKbt5qgyYaccsd_DThsu1yA__WZCZPmzMBIt4CSdHXk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14a605a0-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c284b3c2-7179-4db6-aae0-0de09b2467b6","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.8213923} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdd69023-fb6b-4865-80e7-8d1bc5d67e95","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.8216743} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"14a605a0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc'","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc'","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"14a605a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"14a605a0-793f-11ef-9733-5750b05365a5","responseTime":24,"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":"14a605a0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3c0c3b2cf43d1f1a4cfd0cd2449b164a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14ada6c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3165ae4e-6c99-4ad4-88ad-52ad3103469e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.864939} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.296587,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} device-1 | {"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14ada6c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","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 | {"content":{"canTrickle":true},"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14ada6c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14ada6c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling 200 9ms","method":"POST","requestID":"14ada6c0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14af5470-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6bd27362-70db-4eae-91b2-2a65ecfa06c8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.8753104} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.446971,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14af5470-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14af5470-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14af5470-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling 200 8ms","method":"POST","requestID":"14af5470-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling"} device-1 | {"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4351413989265358418 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:aIkq\r\na=ice-pwd:FnYxnqH/pdf2S59MNo6zpA64\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DA:82:F2:9A:5E:10:30:01:8C:03:29:04:60:07:7D:F1:B2:64:22:4E:67:26:84:5F:64:48:29:60:46:06:B9:B3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 20746453310240953 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:whpX\r\na=ice-pwd:GUUf6KnPzACba4V0I023jGqT\r\na=ice-options:trickle\r\na=fingerprint:sha-256 71:C4:80:25:A9:27:7B:6E:99:6D:D4:64:3A:E7:B3:25:69:85:31:C1:06:D7:C5:2D:59:A6:76:32:78:28:AC:F5\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3354106130 1 udp 2113937151 1527583d-0e6a-4e94-ba0b-8025dfe806ff.local 58315 typ host generation 0 ufrag whpX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1421883393 1 udp 1677729535 141.24.211.56 58315 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag whpX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","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/9bcb82ef-6bbc-4921-982c-6c275389bb0c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c'"} device-1 | {"content":{"candidate":"candidate:211378742 1 udp 2113937151 dada1c05-3cc3-4cb3-83c9-321428322842.local 46101 typ host generation 0 ufrag aIkq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2293499977 1 udp 1677729535 141.24.211.56 46101 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aIkq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","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/07ff63e3-c69e-4443-9abd-7d014e0b68d7'"} device-1 | {"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","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/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a7198f400401bee734f1c1fc7f363f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7a7198f400401bee734f1c1fc7f363f1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"}}},"level":"info","message":"received a callback","requestID":"7a7198f400401bee734f1c1fc7f363f1"} device-1 | {"device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"7a7198f400401bee734f1c1fc7f363f1","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"7a7198f400401bee734f1c1fc7f363f1"} device-1 | {"device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","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/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60d0dea8f3d97beb608fd3dd09414448","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"60d0dea8f3d97beb608fd3dd09414448","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"}}},"level":"info","message":"received a callback","requestID":"60d0dea8f3d97beb608fd3dd09414448"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"14ba7800-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc7ad25f-8c0a-42a4-a19d-abbf8b184adc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"469111b7-670e-48be-9bed-be85eec19c85","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.948243} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.207047,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14ba7800-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14ba7800-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"14ba7800-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc 200 8ms","method":"GET","requestID":"14ba7800-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"60d0dea8f3d97beb608fd3dd09414448","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"60d0dea8f3d97beb608fd3dd09414448"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14be6fa0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9a14df1-64be-4ae3-8717-44b000393cc8","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.9740765} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.085193,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14be6fa0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14be6fa0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14be6fa0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling 200 7ms","method":"POST","requestID":"14be6fa0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14bfcf30-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20409de8-db59-41d5-ada0-e3f14616827f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049730.9828603} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.109144,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14bfcf30-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14bfcf30-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14bfcf30-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling 200 7ms","method":"POST","requestID":"14bfcf30-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s","level":"info","message":"auth send jwt","requestID":"d07a8ecf63603aede387b3f58b1be774"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d07a8ecf63603aede387b3f58b1be774","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","requestID":"d07a8ecf63603aede387b3f58b1be774"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.138883,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d07a8ecf63603aede387b3f58b1be774","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049731,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d07a8ecf63603aede387b3f58b1be774","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","requestID":"d07a8ecf63603aede387b3f58b1be774"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d07a8ecf63603aede387b3f58b1be774"} experiment-1 | {"level":"info","message":"GET /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c 200 11ms","method":"GET","requestID":"d07a8ecf63603aede387b3f58b1be774","responseTime":11,"status":200,"url":"/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s","level":"info","message":"auth send jwt","requestID":"d5a6a674de244aca8fc753e20382fae1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d5a6a674de244aca8fc753e20382fae1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","requestID":"d5a6a674de244aca8fc753e20382fae1"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.693882,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"d5a6a674de244aca8fc753e20382fae1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049731,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d5a6a674de244aca8fc753e20382fae1","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Attempting to finish experiment","requestID":"d5a6a674de244aca8fc753e20382fae1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"14ca2f70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.687399,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14ca2f70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049731,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14ca2f70-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","device":"9bcb82ef-6bbc-4921-982c-6c275389bb0c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","device":"07ff63e3-c69e-4443-9abd-7d014e0b68d7","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/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc7ad25f-8c0a-42a4-a19d-abbf8b184adc': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdc7ad25f-8c0a-42a4-a19d-abbf8b184adc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"b6e28d68-eee4-4648-9de9-fdd53baf65d0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.066154} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"257e9b1abcf2b76c7667d6339c174850","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"257e9b1abcf2b76c7667d6339c174850","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7ce2de9-eded-4f7f-b2c8-b12e9151a4bd","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.0663328} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"14ca2f70-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"}}},"level":"info","message":"received a callback","requestID":"257e9b1abcf2b76c7667d6339c174850"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4fd4ded82f8a5ce5f38675f22d95458e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4fd4ded82f8a5ce5f38675f22d95458e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"}}},"level":"info","message":"received a callback","requestID":"4fd4ded82f8a5ce5f38675f22d95458e"} device-1 | {"data":{"peerconnection":"dc7ad25f-8c0a-42a4-a19d-abbf8b184adc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"14ca2f70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc 204 40ms","method":"DELETE","requestID":"14ca2f70-793f-11ef-9733-5750b05365a5","responseTime":40,"status":204,"url":"/peerconnections/dc7ad25f-8c0a-42a4-a19d-abbf8b184adc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"},"level":"info","message":"Successfully finished experiment","requestID":"d5a6a674de244aca8fc753e20382fae1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14d35730-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bcb82ef-6bbc-4921-982c-6c275389bb0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2b68271-fbdc-4c77-94c7-5a5da612d3ca","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.11268} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.214325,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14d35730-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14d35730-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14d35730-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling 200 10ms","method":"POST","requestID":"14d35730-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14d55300-793f-11ef-9733-5750b05365a5"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F943011fc-4a8a-4b24-b943-8ccb913d524c': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F943011fc-4a8a-4b24-b943-8ccb913d524c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"e0b669ba-845c-4869-8ea6-a007c0cc6f1e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.1232584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33b9dd88-13d6-48a6-989c-200b9b7e9942","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.123677} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"d5a6a674de244aca8fc753e20382fae1","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07ff63e3-c69e-4443-9abd-7d014e0b68d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c62c0eed-54b6-414b-b4fa-a32809692814","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.1290555} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.109203,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"14d55300-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7","object_type":"device","rebac_allow":false,"scope_allow":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":"14d55300-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14d55300-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling 200 15ms","method":"POST","requestID":"14d55300-793f-11ef-9733-5750b05365a5","responseTime":15,"status":200,"url":"/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c","requestID":"d5a6a674de244aca8fc753e20382fae1"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5a6a674de244aca8fc753e20382fae1"} experiment-1 | {"level":"info","message":"DELETE /experiments/943011fc-4a8a-4b24-b943-8ccb913d524c 204 154ms","method":"DELETE","requestID":"d5a6a674de244aca8fc753e20382fae1","responseTime":154,"status":204,"url":"/experiments/943011fc-4a8a-4b24-b943-8ccb913d524c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"257e9b1abcf2b76c7667d6339c174850","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"257e9b1abcf2b76c7667d6339c174850"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"4fd4ded82f8a5ce5f38675f22d95458e","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"4fd4ded82f8a5ce5f38675f22d95458e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s","level":"info","message":"auth send jwt","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"0.696","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":"f2eb5cf2ca8850ad4c0abf026994f886"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.463692,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049731,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3077","request_time":"0.709","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":"98c4fdcbbcf3b1d490571be658825aca"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9bcb82ef-6bbc-4921-982c-6c275389bb0c' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/07ff63e3-c69e-4443-9abd-7d014e0b68d7' 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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"637a7b2e-a637-4de3-84f3-f4906decce31","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2180374} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca04481a-6c06-45fa-a134-8accb18e0235","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2227314} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"62c0e850-057a-483d-a852-d4e72abfc9e9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2346163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b57d011-cdd1-408a-86a6-001fd22ac632","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2347372} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.234574347Z"}]},"request_id":"8f39ac64-ba3f-44d6-883b-4bb8a431c6c3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.238805} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"ba6475d530ce5d31f8df4ee083cfdcf7","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s","level":"info","message":"auth send jwt","requestID":"0cc65cc531e00785baa6ce7286a5f1ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0cc65cc531e00785baa6ce7286a5f1ad"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.674313,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"0cc65cc531e00785baa6ce7286a5f1ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049731,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczMX0.FRqQoBFjGfHaOG7PLE_vkF7tE3a5TLZbBlCqYqrCy0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42e6fb44-283d-40d9-8954-f4e288d14d42","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2609096} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30a0ba3f-0d25-4a14-b8b4-cbeac5a35e3c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.264509} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"0c22b338-9f17-418b-87d7-1215cbd949c0","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2740703} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1aee519-7a1a-43b0-9882-e193da9cac6c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2742803} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"8ae66f5d-310b-4338-8dba-e5a629f52ded","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049731.2779653} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0cc65cc531e00785baa6ce7286a5f1ad"} device-1 | {"level":"info","message":"POST /devices? 201 34ms","method":"POST","requestID":"0cc65cc531e00785baa6ce7286a5f1ad","responseTime":34,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0cc65cc531e00785baa6ce7286a5f1ad"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"056877d4bf237513b04a87436822b3f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"056877d4bf237513b04a87436822b3f2","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/0e299a7d-1261-41af-9280-cb674249fea6/websocket 200 1ms","method":"OPTIONS","requestID":"056877d4bf237513b04a87436822b3f2","responseTime":1,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0e299a7d-1261-41af-9280-cb674249fea6/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":"056877d4bf237513b04a87436822b3f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE","level":"info","message":"auth send jwt","requestID":"678cf7b396ed5afac7a650b6a9564e50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"678cf7b396ed5afac7a650b6a9564e50","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"678cf7b396ed5afac7a650b6a9564e50"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236086,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"678cf7b396ed5afac7a650b6a9564e50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"678cf7b396ed5afac7a650b6a9564e50","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"678cf7b396ed5afac7a650b6a9564e50"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"678cf7b396ed5afac7a650b6a9564e50"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/websocket 200 21ms","method":"POST","requestID":"678cf7b396ed5afac7a650b6a9564e50","responseTime":21,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7e84e957ab1cee38b6eadcce6c1f4606","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7e84e957ab1cee38b6eadcce6c1f4606","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0e299a7d-1261-41af-9280-cb674249fea6? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"7e84e957ab1cee38b6eadcce6c1f4606"} device-1 | {"level":"info","message":"OPTIONS /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 1ms","method":"OPTIONS","requestID":"7e84e957ab1cee38b6eadcce6c1f4606","responseTime":1,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE","level":"info","message":"auth send jwt","requestID":"8c388de1fe24044147a9f8fb58a2ec4c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8c388de1fe24044147a9f8fb58a2ec4c"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233191,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"8c388de1fe24044147a9f8fb58a2ec4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"8b8c4eaa-94eb-458a-a258-7bc7dfbbe8f9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.3666706} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc069ad9-8a6c-437d-8e82-473fdc3289e4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.373241} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"b0f82932-6ea4-4ffe-a434-df2ea62a7a6e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.3852046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8c388de1fe24044147a9f8fb58a2ec4c"} device-1 | {"level":"info","message":"PATCH /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 35ms","method":"PATCH","requestID":"8c388de1fe24044147a9f8fb58a2ec4c","responseTime":35,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0e299a7d-1261-41af-9280-cb674249fea6? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"8c388de1fe24044147a9f8fb58a2ec4c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE","level":"info","message":"auth send jwt","requestID":"ada8fcd237222bd31fca567faba99c8e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ada8fcd237222bd31fca567faba99c8e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ada8fcd237222bd31fca567faba99c8e"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215566,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"ada8fcd237222bd31fca567faba99c8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ada8fcd237222bd31fca567faba99c8e","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"7e23cbf4-74c8-48d5-9be1-02aa2a24bb6d","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.4136195} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ada8fcd237222bd31fca567faba99c8e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ada8fcd237222bd31fca567faba99c8e"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ada8fcd237222bd31fca567faba99c8e"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 16ms","method":"GET","requestID":"ada8fcd237222bd31fca567faba99c8e","responseTime":16,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE","level":"info","message":"auth send jwt","requestID":"3a2323ad011c30be31fe5446e83f09f0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a2323ad011c30be31fe5446e83f09f0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3a2323ad011c30be31fe5446e83f09f0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.13923,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"3a2323ad011c30be31fe5446e83f09f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a2323ad011c30be31fe5446e83f09f0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to run experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to book experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully booked experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"163b99c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"163be7e0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696861,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"163b99c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"163b99c0-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821397,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"163be7e0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"163be7e0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faaa9a2ec-72d4-4568-8752-2b74fd48a916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.234574347Z"}]},"request_id":"29d4f1c6-43a3-48f4-a5d2-78d3329d136e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.4770634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"163b99c0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"6424d116-878f-4c1f-be99-bcbc09549ba3","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.4784565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"163be7e0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"163b99c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916? 200 17ms","method":"GET","requestID":"163b99c0-793f-11ef-9733-5750b05365a5","responseTime":17,"status":200,"url":"/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"163be7e0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 16ms","method":"GET","requestID":"163be7e0-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Setting up experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"16413f10-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.600824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"16413f10-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16413f10-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"c30af406-e2af-4586-83e3-1dfb9fa688a4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.5361474} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f1c50e6-e745-45f3-892a-00231461f769","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.536383} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"16413f10-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' to 'http://localhost/callbacks/experiment'","requestID":"16413f10-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"16413f10-793f-11ef-9733-5750b05365a5"} authentication-1 | {"level":"info","message":"POST /token 201 19ms","method":"POST","requestID":"16475990-793f-11ef-8419-f56e35e139f8","responseTime":19,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 66ms","method":"POST","requestID":"16413f10-793f-11ef-9733-5750b05365a5","responseTime":66,"status":201,"url":"/devices/aaa9a2ec-72d4-4568-8752-2b74fd48a916?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully set up experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16531960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16536780-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1653b5a0-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully running experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.073853,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55914","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.843933,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"16531960-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"16531960-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"16536780-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"16536780-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55922","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.932351,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a38b4fa-2293-4bdb-b625-827aeca6b839","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.6346312} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1653b5a0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","rebac_allow":false,"scope_allow":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":"1653b5a0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"f71f3657-7b4b-457d-a705-f792ec033ee1","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.640317} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"16531960-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"fc9b0d73-0613-40fd-a2ef-b73c74f23578","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.6441355} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device ae0455ce-2d12-4664-a98d-ae37b61871a2","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device ae0455ce-2d12-4664-a98d-ae37b61871a2\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/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"1653b5a0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling 404 20ms","method":"POST","requestID":"1653b5a0-793f-11ef-9733-5750b05365a5","responseTime":20,"status":404,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device ae0455ce-2d12-4664-a98d-ae37b61871a2"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"3a2323ad011c30be31fe5446e83f09f0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"16536780-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F785b04c1-14ae-495f-8240-7f3f40131c18#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F785b04c1-14ae-495f-8240-7f3f40131c18","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"42f20690-eae8-4470-b77e-bd8b2e343618","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.6480644} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0be5ff0-aa1c-4b25-b697-b846574fbc0a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.6489224} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16578630-793f-11ef-9733-5750b05365a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"3a2323ad011c30be31fe5446e83f09f0","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16531960-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 32ms","method":"GET","requestID":"16531960-793f-11ef-9733-5750b05365a5","responseTime":32,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:13Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16536780-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 32ms","method":"GET","requestID":"16536780-793f-11ef-9733-5750b05365a5","responseTime":32,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0bd4e1a8-9bff-40da-85c9-f78de3fb315b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049733.6586747} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.967102,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"16578630-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","rebac_allow":false,"scope_allow":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":"16578630-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18","user":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 236ms","method":"POST","requestID":"3a2323ad011c30be31fe5446e83f09f0","responseTime":236,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.243","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16578630-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling 200 14ms","method":"POST","requestID":"16578630-793f-11ef-9733-5750b05365a5","responseTime":14,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8efb7ad3071b2bdac933bea1a3ab699b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8efb7ad3071b2bdac933bea1a3ab699b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/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":"8efb7ad3071b2bdac933bea1a3ab699b"} device-1 | {"level":"info","message":"OPTIONS /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/websocket 200 1ms","method":"OPTIONS","requestID":"8efb7ad3071b2bdac933bea1a3ab699b","responseTime":1,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlVkOFdjdXByVW1RSlhocG0xZjYzOFc2c01qMUloSUlYTndoRUMxWl9uSmVYME84d1A3ODNtSzZOUnhPRFRvSTJLV2VTWmVWWmlHdjlYRFdsYjJoWjdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.xo26uW9lGDId8BxzlpLlHSKuQS2tHwu3t6xlMctPHe8","level":"info","message":"auth send jwt","requestID":"2280b5809f0ab143ab6269ce3ea65f4d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2280b5809f0ab143ab6269ce3ea65f4d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2280b5809f0ab143ab6269ce3ea65f4d"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28359,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"2280b5809f0ab143ab6269ce3ea65f4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Ud8WcuprUmQJXhpm1f638W6sMj1IhIIXNwhEC1Z_nJeX0O8wP783mK6NRxODToI2KWeSZeVZiGv9XDWlb2hZ7A","iat":1727049735,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlVkOFdjdXByVW1RSlhocG0xZjYzOFc2c01qMUloSUlYTndoRUMxWl9uSmVYME84d1A3ODNtSzZOUnhPRFRvSTJLV2VTWmVWWmlHdjlYRFdsYjJoWjdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.xo26uW9lGDId8BxzlpLlHSKuQS2tHwu3t6xlMctPHe8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2280b5809f0ab143ab6269ce3ea65f4d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2280b5809f0ab143ab6269ce3ea65f4d"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/websocket 200 22ms","method":"POST","requestID":"2280b5809f0ab143ab6269ce3ea65f4d","responseTime":22,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/websocket"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2280b5809f0ab143ab6269ce3ea65f4d"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04207aab1434fc143416df9ae65f4b3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"04207aab1434fc143416df9ae65f4b3e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"04207aab1434fc143416df9ae65f4b3e"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"adedc3da3243bb39e67aebfa70e16fa1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"adedc3da3243bb39e67aebfa70e16fa1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"adedc3da3243bb39e67aebfa70e16fa1"} device-1 | {"level":"info","message":"OPTIONS /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 1ms","method":"OPTIONS","requestID":"adedc3da3243bb39e67aebfa70e16fa1","responseTime":1,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 22ms","method":"POST","requestID":"04207aab1434fc143416df9ae65f4b3e","responseTime":22,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"04207aab1434fc143416df9ae65f4b3e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlVkOFdjdXByVW1RSlhocG0xZjYzOFc2c01qMUloSUlYTndoRUMxWl9uSmVYME84d1A3ODNtSzZOUnhPRFRvSTJLV2VTWmVWWmlHdjlYRFdsYjJoWjdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.xo26uW9lGDId8BxzlpLlHSKuQS2tHwu3t6xlMctPHe8","level":"info","message":"auth send jwt","requestID":"6d3c012b84c965c41a8fb36cd8ac268a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6d3c012b84c965c41a8fb36cd8ac268a"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"6d3c012b84c965c41a8fb36cd8ac268a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Ud8WcuprUmQJXhpm1f638W6sMj1IhIIXNwhEC1Z_nJeX0O8wP783mK6NRxODToI2KWeSZeVZiGv9XDWlb2hZ7A","iat":1727049735,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlVkOFdjdXByVW1RSlhocG0xZjYzOFc2c01qMUloSUlYTndoRUMxWl9uSmVYME84d1A3ODNtSzZOUnhPRFRvSTJLV2VTWmVWWmlHdjlYRFdsYjJoWjdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.xo26uW9lGDId8BxzlpLlHSKuQS2tHwu3t6xlMctPHe8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"9e34aa33-8aae-45ec-89d3-3f8f5d817b91","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049735.779318} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","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:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bc91a6a-3505-41ce-8ea9-47c8127ac83f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049735.7863705} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"5a854f48-8df5-40e6-a901-7f576fa6944c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049735.8001957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' to 'http://localhost/callbacks/experiment'","requestID":"6d3c012b84c965c41a8fb36cd8ac268a"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6d3c012b84c965c41a8fb36cd8ac268a"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"6d3c012b84c965c41a8fb36cd8ac268a"} device-1 | {"level":"info","message":"PATCH /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 38ms","method":"PATCH","requestID":"6d3c012b84c965c41a8fb36cd8ac268a","responseTime":38,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a92ef27d8e8aed8dcd83763d76a2ce9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1a92ef27d8e8aed8dcd83763d76a2ce9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]}],"type":"device","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"1a92ef27d8e8aed8dcd83763d76a2ce9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"1a92ef27d8e8aed8dcd83763d76a2ce9","responseTime":8,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.-nuMVUfWY7WqY9DGUIQUF8hBOlxP-FmS-wL_A3__9eg","level":"info","message":"auth send jwt","requestID":"dce9e95b3cbe85cf692edd577de12c07"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"1a92ef27d8e8aed8dcd83763d76a2ce9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dce9e95b3cbe85cf692edd577de12c07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dce9e95b3cbe85cf692edd577de12c07"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"dce9e95b3cbe85cf692edd577de12c07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049735,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.-nuMVUfWY7WqY9DGUIQUF8hBOlxP-FmS-wL_A3__9eg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dce9e95b3cbe85cf692edd577de12c07","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"fd39c924-c7d1-4f5d-9591-14b3a2e01601","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049735.829129} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dce9e95b3cbe85cf692edd577de12c07","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dce9e95b3cbe85cf692edd577de12c07"} device-1 | {"level":"info","message":"GET /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 16ms","method":"GET","requestID":"dce9e95b3cbe85cf692edd577de12c07","responseTime":16,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dce9e95b3cbe85cf692edd577de12c07"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.-nuMVUfWY7WqY9DGUIQUF8hBOlxP-FmS-wL_A3__9eg","level":"info","message":"auth send jwt","requestID":"003248f4ad8496e043094f653954fabd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"003248f4ad8496e043094f653954fabd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"003248f4ad8496e043094f653954fabd"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342206,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"003248f4ad8496e043094f653954fabd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049735,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczNX0.-nuMVUfWY7WqY9DGUIQUF8hBOlxP-FmS-wL_A3__9eg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"003248f4ad8496e043094f653954fabd","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"8a7b4bc3-3fcf-45f2-9e8a-7fecbfaf4287","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049735.8528357} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"003248f4ad8496e043094f653954fabd","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"003248f4ad8496e043094f653954fabd"} gateway-1 | {"time_local":"23/Sep/2024:00:02:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"003248f4ad8496e043094f653954fabd"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 17ms","method":"GET","requestID":"003248f4ad8496e043094f653954fabd","responseTime":17,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1953fd50-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19544b70-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.795761,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1953fd50-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1953fd50-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51340","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51340","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.408247,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"19544b70-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"19544b70-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"80d4750a-ff1e-43c1-929b-6d7cc9b77984","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.6739733} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1953fd50-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1953fd50-793f-11ef-9733-5750b05365a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"a7f05018-baa0-4c52-85fa-ca158efa901b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.67736} device-1 | {"level":"info","message":"GET /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 16ms","method":"GET","requestID":"1953fd50-793f-11ef-9733-5750b05365a5","responseTime":16,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19544b70-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19544b70-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 19ms","method":"GET","requestID":"19544b70-793f-11ef-9733-5750b05365a5","responseTime":19,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19577fc0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3e9c02b-3c12-4564-8af7-cc3df653b41b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.6899023} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.321146,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"19577fc0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","rebac_allow":false,"scope_allow":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":"19577fc0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19577fc0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling 200 12ms","method":"POST","requestID":"19577fc0-793f-11ef-9733-5750b05365a5","responseTime":12,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1959c9b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8648616a-fee5-459e-a139-648aee16327c","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.7060344} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.399285,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1959c9b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","rebac_allow":false,"scope_allow":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":"1959c9b0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1959c9b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling 200 13ms","method":"POST","requestID":"1959c9b0-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"195c3ab0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"195c88d0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.829584,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"195c3ab0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"195c3ab0-793f-11ef-9733-5750b05365a5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51340","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51340","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.439935,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"195c88d0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"195c88d0-793f-11ef-9733-5750b05365a5","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:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:13.536112406Z"}]},"request_id":"4eb385eb-a17d-42c4-b147-bea3fb1e0ced","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.7279534} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"195c3ab0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"},"timestamp":"2024-09-23T00:02:11.274039408Z"}]},"request_id":"c57b9b52-199f-434b-b487-11c487d3ebbb","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.7292845} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"195c88d0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"195c3ab0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2? 200 21ms","method":"GET","requestID":"195c3ab0-793f-11ef-9733-5750b05365a5","responseTime":21,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"195c88d0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /devices/0e299a7d-1261-41af-9280-cb674249fea6? 200 20ms","method":"GET","requestID":"195c88d0-793f-11ef-9733-5750b05365a5","responseTime":20,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Building connection plan","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"0f5ec377-5deb-4d37-ab0c-b41be83fe8aa"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"c4333bf2-5f47-4a5a-b2a4-aa380f01c6fe"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"cdc37c1c-63a1-48af-a596-dff7983fe300"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3a2323ad011c30be31fe5446e83f09f0"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.194961,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"19600b40-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049733,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczM30.CM4O3ayaKIigzuaCi9k8SEZpCLUPDNyOtXZkASXRAkE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19600b40-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da'. 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]}},"raw_response":{},"request_id":"abf7e0af-dc6f-4e53-a623-a75ccb3aeb07","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.759844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a14d838-105d-47f9-bede-ec6788c296e5","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.76014} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"19600b40-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8'","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8'","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"19600b40-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"19600b40-793f-11ef-9733-5750b05365a5","responseTime":37,"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":"19600b40-793f-11ef-9733-5750b05365a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3a2323ad011c30be31fe5446e83f09f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"196b07c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"990c8c0a-3117-49fa-8d5d-60ffa8e167b4","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.8167386} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.670837,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"196b07c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"196b07c0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"196b07c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling 200 10ms","method":"POST","requestID":"196b07c0-793f-11ef-9733-5750b05365a5","responseTime":10,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"} device-1 | {"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"196d9fd0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d2a673b-fd31-4c60-8d27-24853332794f","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.8337083} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.427035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"196d9fd0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"196d9fd0-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"196d9fd0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling 200 9ms","method":"POST","requestID":"196d9fd0-793f-11ef-9733-5750b05365a5","responseTime":9,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 4680125898335027418 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:sUwF\r\na=ice-pwd:BPgFDHb8Ns9penf1HnlPdWR3\r\na=ice-options:trickle\r\na=fingerprint:sha-256 53:56:02:0C:98:D8:B5:30:B7:ED:64:6E:2D:E3:23:80:D0:58:E0:BC:CF:B2:4D:83:EC:45:66:2F:10:F7:8D: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":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4214743103699629196 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:28CN\r\na=ice-pwd:P9ao4LsEHxbTxHfpefPYUwDb\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AE:90:54:94:5B:27:B7:32:1F:F3:9E:9D:7C:C8:F4:D8:EF:52:0A:71:C3:24:CF:EC:0D:5B:A8:57:E0:6A:20:2C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:99023019 1 udp 2113937151 aa2015b3-e4e0-436b-83bd-127ceb91190c.local 52120 typ host generation 0 ufrag 28CN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2177602260 1 udp 1677729535 141.24.211.56 52120 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 28CN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0e299a7d-1261-41af-9280-cb674249fea6","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/0e299a7d-1261-41af-9280-cb674249fea6'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6'"} device-1 | {"content":{"candidate":"candidate:2615922048 1 udp 2113937151 964db836-2f43-4a06-99a2-f7c6b139c766.local 45318 typ host generation 0 ufrag sUwF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:146828435 1 udp 1677729535 141.24.211.56 45318 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag sUwF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","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/ae0455ce-2d12-4664-a98d-ae37b61871a2'"} device-1 | {"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"0e299a7d-1261-41af-9280-cb674249fea6","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/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0bcc40de064f0a674ddf69ad55d73684","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0bcc40de064f0a674ddf69ad55d73684","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"}}},"level":"info","message":"received a callback","requestID":"0bcc40de064f0a674ddf69ad55d73684"} device-1 | {"device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"0bcc40de064f0a674ddf69ad55d73684"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"0bcc40de064f0a674ddf69ad55d73684","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"0e299a7d-1261-41af-9280-cb674249fea6","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","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/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d13af6bb5addb271bfedb0ebb6ab10d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d13af6bb5addb271bfedb0ebb6ab10d7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"}}},"level":"info","message":"received a callback","requestID":"d13af6bb5addb271bfedb0ebb6ab10d7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1977d900-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ff7491-bb38-42eb-9b27-3bf391bf0dd8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0484dcae-3109-4104-be1a-680e54e477ff","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.9003105} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.171313,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1977d900-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1977d900-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1977d900-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"GET /peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8 200 7ms","method":"GET","requestID":"1977d900-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"d13af6bb5addb271bfedb0ebb6ab10d7","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"d13af6bb5addb271bfedb0ebb6ab10d7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"197bf7b0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2aa795a4-e439-4244-8cb7-9dfba96cb615","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.9267988} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.132609,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"197bf7b0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"197bf7b0-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"197bf7b0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling 200 7ms","method":"POST","requestID":"197bf7b0-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"197d5740-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a158d50e-9876-4372-bb64-6a817ed5de5a","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049738.9365418} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799156,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"197d5740-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"197d5740-793f-11ef-9733-5750b05365a5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"197d5740-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling 200 8ms","method":"POST","requestID":"197d5740-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI","level":"info","message":"auth send jwt","requestID":"673d50233ae7f6568e3c89fc705fbf3b"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/785b04c1-14ae-495f-8240-7f3f40131c18","requestID":"673d50233ae7f6568e3c89fc705fbf3b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"673d50233ae7f6568e3c89fc705fbf3b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.662096,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"673d50233ae7f6568e3c89fc705fbf3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049738,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"673d50233ae7f6568e3c89fc705fbf3b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/785b04c1-14ae-495f-8240-7f3f40131c18","requestID":"673d50233ae7f6568e3c89fc705fbf3b"} gateway-1 | {"time_local":"23/Sep/2024:00:02:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/785b04c1-14ae-495f-8240-7f3f40131c18 HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"673d50233ae7f6568e3c89fc705fbf3b"} experiment-1 | {"level":"info","message":"GET /experiments/785b04c1-14ae-495f-8240-7f3f40131c18 200 11ms","method":"GET","requestID":"673d50233ae7f6568e3c89fc705fbf3b","responseTime":11,"status":200,"url":"/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI","level":"info","message":"auth send jwt","requestID":"51677d9772a1497068d7393b6e97f3f4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"51677d9772a1497068d7393b6e97f3f4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/785b04c1-14ae-495f-8240-7f3f40131c18","requestID":"51677d9772a1497068d7393b6e97f3f4"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.506216,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"51677d9772a1497068d7393b6e97f3f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"experiment:http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18","object_type":"experiment","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049738,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"51677d9772a1497068d7393b6e97f3f4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Attempting to finish experiment","requestID":"51677d9772a1497068d7393b6e97f3f4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"19879070-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.697314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"19879070-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"peerconnection:http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049738,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19879070-793f-11ef-9733-5750b05365a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","device":"ae0455ce-2d12-4664-a98d-ae37b61871a2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","device":"0e299a7d-1261-41af-9280-cb674249fea6","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/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ff7491-bb38-42eb-9b27-3bf391bf0dd8","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ff7491-bb38-42eb-9b27-3bf391bf0dd8': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ff7491-bb38-42eb-9b27-3bf391bf0dd8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"548ec4d4-86a8-4835-80f3-25991c235c9e","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.016185} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03f93ea561d5c298bce7493556b1f6b6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4c4b660-468b-4380-960e-b7e04ff69f22","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.0165274} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"03f93ea561d5c298bce7493556b1f6b6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"19879070-793f-11ef-9733-5750b05365a5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc56879fe687e56ec8e3c048c458ae98","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"fc56879fe687e56ec8e3c048c458ae98","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"}}},"level":"info","message":"received a callback","requestID":"03f93ea561d5c298bce7493556b1f6b6"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"}}},"level":"info","message":"received a callback","requestID":"fc56879fe687e56ec8e3c048c458ae98"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"19879070-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8 204 34ms","method":"DELETE","requestID":"19879070-793f-11ef-9733-5750b05365a5","responseTime":34,"status":204,"url":"/peerconnections/f2ff7491-bb38-42eb-9b27-3bf391bf0dd8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6'"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"198d35c0-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"198d35c0-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","payload":{"admin":true,"edgeToken":"Tou6CVYTx0pzFSPNUxXajdd6EJ6UhzVVpBrDUBPiHMkzmRou2yBft1w45j7Czzl32xXoKyIMeHywSJ5Ucs7LWA","iat":1727049738,"sub":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da","subject_alt":"http://localhost/users/f1b04f27-6dc3-4a47-b834-9c6de11f83da"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2YxYjA0ZjI3LTZkYzMtNGE0Ny1iODM0LTljNmRlMTFmODNkYSIsImVkZ2VUb2tlbiI6IlRvdTZDVllUeDBwekZTUE5VeFhhamRkNkVKNlVoelZWcEJyRFVCUGlITWt6bVJvdTJ5QmZ0MXc0NWo3Q3p6bDMyeFhvS3lJTWVIeXdTSjVVY3M3TFdBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzA0OTczOH0.oZGc7cSxCHnwPkcHARXgDKdHb7Xmil995r8qDiy3TtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"198d35c0-793f-11ef-9733-5750b05365a5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"ec12edee-f60c-4bf1-be4b-81476e32b1e9","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.050837} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4931b4b-cdf1-47bd-8d16-a525e8777877","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.0509086} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"198d35c0-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"198d35c0-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"DELETE /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2 204 25ms","method":"DELETE","requestID":"198d35c0-793f-11ef-9733-5750b05365a5","responseTime":25,"status":204,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"},"level":"info","message":"Successfully finished experiment","requestID":"51677d9772a1497068d7393b6e97f3f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1993c570-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e299a7d-1261-41af-9280-cb674249fea6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49b1090b-b06f-45b2-98d1-d61071967ed7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.0860922} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.973648,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"1993c570-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6","object_type":"device","rebac_allow":false,"scope_allow":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":"1993c570-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1993c570-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling 200 13ms","method":"POST","requestID":"1993c570-793f-11ef-9733-5750b05365a5","responseTime":13,"status":200,"url":"/devices/0e299a7d-1261-41af-9280-cb674249fea6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19963670-793f-11ef-9733-5750b05365a5"} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Received request.","req_id":1706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","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%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F785b04c1-14ae-495f-8240-7f3f40131c18': 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:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F785b04c1-14ae-495f-8240-7f3f40131c18","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff1b04f27-6dc3-4a47-b834-9c6de11f83da"}]},"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","writes":null},"raw_response":{},"request_id":"2e3a7c18-e451-4c8a-8d71-4ef58f603064","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.1018724} authorization-1 | {"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","contextual_tuples":null,"store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae0455ce-2d12-4664-a98d-ae37b61871a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa042b67-e7b1-4ee4-8133-6a9d8a799b62","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.1020534} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:53476","raw_request":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3"},"raw_response":{"authorization_model":{"id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dc48ebc-ab0e-4c46-9547-3135e4fb6b9b","store_id":"01J8E2SQENQHS7Q56C9QMRSEC3","subsystem":"openfga","timestamp":1727049739.1023476} authorization-1 | {"client_addr":"127.0.0.1:55160","level":"info","msg":"Sent response.","req_id":1706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.855274,"resp_status":200,"subsystem":"opa","time":"2024-09-23T00:02:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","openfga":{"authorization_model_id":"01J8E2SQG4DZJVCPZ2NXSGGBP7","store":"01J8E2SQENQHS7Q56C9QMRSEC3"},"requestID":"19963670-793f-11ef-9733-5750b05365a5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2","object_type":"device","rebac_allow":false,"scope_allow":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":"19963670-793f-11ef-9733-5750b05365a5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"51677d9772a1497068d7393b6e97f3f4","responseTime":28,"status":200,"url":"/relations/update"} 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/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"19963670-793f-11ef-9733-5750b05365a5"} device-1 | {"level":"info","message":"POST /devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/signaling 404 14ms","method":"POST","requestID":"19963670-793f-11ef-9733-5750b05365a5","responseTime":14,"status":404,"url":"/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2/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":"51677d9772a1497068d7393b6e97f3f4"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/785b04c1-14ae-495f-8240-7f3f40131c18","requestID":"51677d9772a1497068d7393b6e97f3f4"} gateway-1 | {"time_local":"23/Sep/2024:00:02:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/785b04c1-14ae-495f-8240-7f3f40131c18 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51677d9772a1497068d7393b6e97f3f4"} experiment-1 | {"level":"info","message":"DELETE /experiments/785b04c1-14ae-495f-8240-7f3f40131c18 204 184ms","method":"DELETE","requestID":"51677d9772a1497068d7393b6e97f3f4","responseTime":184,"status":204,"url":"/experiments/785b04c1-14ae-495f-8240-7f3f40131c18"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 157ms","method":"POST","requestID":"03f93ea561d5c298bce7493556b1f6b6","responseTime":157,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"03f93ea561d5c298bce7493556b1f6b6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 157ms","method":"POST","requestID":"fc56879fe687e56ec8e3c048c458ae98","responseTime":157,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02: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.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"fc56879fe687e56ec8e3c048c458ae98"} gateway-1 | {"time_local":"23/Sep/2024:00:02:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2836","request_time":"3.465","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":"ef9a04143fabc148947219961306109c"} gateway-1 | {"time_local":"23/Sep/2024:00:02:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"5.874","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":"a19063511a340db75dde52938ed0d403"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0e299a7d-1261-41af-9280-cb674249fea6' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8de87497604140402133df6377e88895","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8de87497604140402133df6377e88895","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":false,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/ae0455ce-2d12-4664-a98d-ae37b61871a2"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"8de87497604140402133df6377e88895"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"8de87497604140402133df6377e88895","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:00:02:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"8de87497604140402133df6377e88895"} authentication-1 exited with code 0 forwarding-1 exited with code 0 authorization-1 exited with code 0 experiment-1 exited with code 0 federation-1 exited with code 0 device-1 exited with code 0 gateway-1 exited with code 0